我在用着创建进程为用户在 C# 中通过服务启动进程
我的服务需要等待进程退出,但我不知道该怎么做,
我不想检查进程列表中的进程是否存在
The 处理信息返回新创建进程的句柄(hProcess
),您可以等待此句柄,当进程退出时,该句柄将发出信号。
您可以使用安全等待句柄封装句柄然后使用等待句柄.WaitOne等待进程退出。
这是包装进程句柄的方法
class ProcessWaitHandle : WaitHandle
{
public ProcessWaitHandle(IntPtr processHandle)
{
this.SafeWaitHandle = new SafeWaitHandle(processHandle, false);
}
}
然后下面的代码就可以等待句柄了
ProcessWaitHandle waitable = new ProcessWaitHandle(pi.hProcess);
waitable.WaitOne();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)