With Process.Start(), How can I keep cmd prompt op

2019-05-16 21:53发布

Possible Duplicate:
Any way to keep an external command window open during a Process.Start(..)?

I've seen this post before but those solutions don't work for me for some reason. With Process.Start(), How can I keep cmd prompt open when the /K argument doesn't work? There's also no "WaitForExit" method available.

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);

What I want to see is if the process processed successfully.

Thanks

标签: c# cmd
2条回答
可以哭但决不认输i
2楼-- · 2019-05-16 22:01

You can wait for the process to finish before continuing:

var process = Process.Start(processInfo);
process.WaitForExit();
if (process.ExitCode != 0) {
    // Handle failure...
}
查看更多
做自己的国王
3楼-- · 2019-05-16 22:25

Try this:

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);
查看更多
登录 后发表回答