如何检测进程何时不再存在?

How to detect when a process doesnt exist anymore?

尝试找到一种在进程不再存在时获得通知的方法,而不是不断检查 "if process exist".

之类的东西

我有哪些选择?

您可以在该进程上使用 OpenProcess and use WaitForSingleObject 打开一个进程。一旦目标进程不再存在,函数 WaitForSingleObject 将 return。但是,如果您希望在目标进程不再存在时立即通知您的程序,则必须让一个线程处于持续等待状态。

另一种方法是调用 RegisterWaitForSingleObject,它将自动为您创建一个线程(或使用线程池中的现有线程),该线程将等待进程并调用回调函数您指定,一旦目标进程不再存在。