Car*_*bon 3 c++ windows winapi
如果我已经创建了一个流程CreateProcess(),我将如何确定它是否仍在运行?我知道我需要使用,pi.hProcess但我不知道如何,谷歌并没有真正给我有意义的提示.
PROCESS_INFORMATION pi;
STARTUPINFO si;
ZeroMemory(&si, sizeof(si));
si.cb = sizeof(si);
ZeroMemory(&pi, sizeof(pi));
bool got_it=CreateProcess(NULL, CA2T(launchString.c_str()), NULL, NULL, false, NORMAL_PRIORITY_CLASS, NULL, NULL, &si, &pi);
Run Code Online (Sandbox Code Playgroud)
您可以使用任何标准的等待功能,比如WaitForSingleObject(),例如:
switch (WaitForSingleObject(pi.hProcess, 0))
{
case WAIT_OBJECT_0:
// process has terminated...
break;
case WAIT_TIMEOUT:
// process is still running...
break;
}
Run Code Online (Sandbox Code Playgroud)