获取启动程序的退出码

获取程序的退出码使用的是windowsAPI函数::GetExitCodeProcess();

函数原型为
WINBASEAPI
BOOL
WINAPI
GetExitCodeProcess(
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

你可能感兴趣的:(获取启动程序的退出码)