通用 Windows 平台 (UWP) 在 Process.StandardOutput.ReadToEnd 上挂起

Universal Windows Platform (UWP) hangs on Process.StandardOutput.ReadToEnd

当我 运行 process.StandardOutput.ReadToEnd 下面的方法挂起或者 returns 为空。但是确切的方法 运行 使用控制台应用程序就好了。 UWP 中是否缺少需要添加到此方法中的内容?

  private void GetDeviceProperties()
    {
        Process process = new Process();
        process.StartInfo.FileName = "adb.exe";
        process.StartInfo.Arguments = "shell getprop"; 
        process.StartInfo.UseShellExecute = false;
        process.StartInfo.RedirectStandardOutput = true;
        process.StartInfo.RedirectStandardError = true;
        process.Start();
        //* Read the output (or the error)
        string output = process.StandardOutput.ReadToEnd();
        string err = process.StandardError.ReadToEnd();
        process.WaitForExit();
    }

UWP 运行在沙盒环境中,似乎无法从UWP 直接执行或启动exe。不过,您可以尝试使用 Windows.System.Launcher class 启动 URI 或文件。