本文共 561 字,大约阅读时间需要 1 分钟。
获取程序的退出码使用的是windowsAPI函数::GetExitCodeProcess();
函数原型为
WINBASEAPIBOOLWINAPIGetExitCodeProcess(in HANDLE hProcess,out LPDWORD lpExitCode);可知第一个参数是进程句柄,第二个参数是传出参数进程退出码。
使用时先要获取到进程的句柄,可使用系统API函数::OpenProcess(),返回值即进程句柄。
获取退出码时需要等待进程退出才有,否则获取到的是不准确的退出码。
此时可以使用函数::WaitForSingleObject();
参数传入需要获取的进程的句柄,第二个参数传入INFINITE无限等待,当选定的程序退出时,即可获得该程序的退出码。
DWORD exitCode = 0;HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS,FALSE,748);WaitForSingleObject(hProcess,INFINITE);BOOL isGet = GetExitCodeProcess(hProcess,&exitCode);
转载于:https://blog.51cto.com/11549692/2177553