如何等待PID(不是从程序本身启动)不再存在? 我希望我的程序通过命令行参数从外部程序获取PID,并等待它退出然后执行某些操作。C#等待外部PID退出
我搜索了它,但是我能找到的所有例子都是C#程序自身启动的例子。这是易于管理..
我像这样的东西去,但它显然是行不通的..
Process[] pname = Process.GetProcessById(7860);
if (pname.Length == 0)
Console.WriteLine("nothing");
else
Console.WriteLine("run");
怎么可能实现呢?
@RaymondChen:那不是完全一样的,他们都在等待的过程中非常相同的代码开始引用的问题。 – wonko79
@ wonko79:在重复问答中未涉及的部分是不可能的部分。一个随机进程在恰当的时间神奇地找到感兴趣的应用程序的标准I/O句柄,并使用它们将进程ID传入。 – IInspectable
[这个答案](http://stackoverflow.com/a/6723758/902497)是特定的副本。 “创建/附加到进程,然后使用'WaitForExit()'来阻止它退出,或者如果你不希望你的应用程序在它等待应用程序退出时被阻止,则使用'OnExited'事件。”这个特定的问题是使用“附加”的情况。 –