使用Process.Start(),当/ K参数不起作用时,如何保持cmd提示打开?

时间:2012-12-05 21:25:30

标签: c# cmd

  

可能重复:
  Any way to keep an external command window open during a Process.Start(..)?

之前我见过这篇文章,但由于某种原因,这些解决方案对我不起作用。使用Process.Start(),当/ K参数不起作用时,如何保持cmd提示打开?还没有“WaitForExit”方法可用。

ProcessStartInfo processInfo = new ProcessStartInfo("cmd.exe", "/K " + "C:\\Windows\\System32\\" + "takeown.exe");
processInfo.Verb = "runas";
processInfo.Arguments = "/F \"C:\\Program Files(x86)\\Borland\" /R /D Y";
Process.Start(processInfo);

我想看到的是该流程是否成功处理。

由于

2 个答案:

答案 0 :(得分:4)

您可以在继续之前等待该过程完成:

var process = Process.Start(processInfo);
process.WaitForExit();
if (process.ExitCode != 0) {
    // Handle failure...
}

答案 1 :(得分:4)

试试这个:

ProcessStartInfo processInfo = new ProcessStartInfo("cmd.exe");
processInfo.Verb = "runas";
processInfo.Arguments = "/K C:\\Windows\\System32\takeown.exe /F \"C:\\Program Files(x86)\\Borland\" /R /D Y";
Process.Start(processInfo);