Process.Start()从命令提示符窗口获取错误

我正在尝试使用args 启动命令promt进程 。 现在我想获取有关错误的信息(如果存在)。

someProcess = System.Diagnostics.Process.Start(cmd, someArgs); 

最好的问候,洛维吉

其他答案都是正确的。 以下是您可以使用的一些代码:

 ProcessStartInfo startInfo = new ProcessStartInfo(cmd, args); startInfo.UseShellExecute = false; startInfo.RedirectStandardError = true; Process someProcess = Process.Start(startInfo); string errors = someProcess.StandardError.ReadToEnd(); 

请注意,如果找不到该文件,则不会出现标准错误错误。 你会得到一个例外。

您可能正在寻找StandardError属性 。

Process.StandardError属性 :

获取用于读取应用程序的错误输出的流。

这应该做你想要的。

注意

要使用StandardError,必须将ProcessStartInfo.UseShellExecute设置为false,并且必须将ProcessStartInfo.RedirectStandardError设置为true。 否则,从StandardError流中读取会引发exception。