我希望能够观看一个流程,直到它被终止,一旦不存在就会显示一条消息,怎么能实现呢?
答案 0 :(得分:11)
创建/附加到流程,然后使用WaitForExit()
阻止直到它退出,或者如果您不希望应用程序在等待应用程序时阻止,请使用OnExited
事件退出。
我衷心建议您查看Process
- right here
答案 1 :(得分:8)
.NET Framework内置了对此的支持。您需要使用Process.Start
method启动该过程,然后调用WaitForExit
method,这将阻止您的应用程序的执行,直到您启动的过程完成并关闭。
示例代码:
// Start the process.
Process proc = Process.Start("notepad.exe"); // TODO: NEVER hard-code strings!!!
// Wait for the process to end.
proc.WaitForExit();
// Show your message box.
MessageBox.Show("Process finished.");
相关知识库文章:How to wait for a shelled application to finish using Visual C#
答案 2 :(得分:1)
我认为这就是你想要做的事情:
System.Diagnostics.Process process=new System.Diagnostics.Process();
process.StartInfo.FileName = "process.exe";
process.Start();
process.WaitForExit();
//process ended
MessageBox.Show("Process terminated");