如何使用winapi等待非子进程?

时间:2016-02-08 14:27:11

标签: c++ winapi process

我看了:

代码段:

HANDLE  hProcess = OpenProcess(SYNCHRONIZE, TRUE, inProcessID); 

if (NULL == hProcess)
{
    WaitForSingleObject(hProcess,INFINITE);
}

我已尝试WaitForSingleObjectWaitForSingleObjectEx,但实际上都没等。

例如,假设记事本正在运行,我想等待一些用户关闭它。我该怎么办 ?

1 个答案:

答案 0 :(得分:5)

来自OpenProcess的文档:

  

如果函数成功,则返回值是一个打开的句柄   指定的过程。

     

如果函数失败,则返回值为NULL。要获得扩展错误   信息,调用GetLastError。

所以你的if语句应该是:

if (NULL != hProcess) ...