获取启动程序的退出码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取启动程序的退出码相关的知识,希望对你有一定的参考价值。

获取程序的退出码使用的是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);

以上是关于获取启动程序的退出码的主要内容,如果未能解决你的问题,请参考以下文章

获取 NodeJS 程序退出码

python 获取程序退出状态码

Spring Boot 应用程序失败,退出代码为 0

获取 NodeJS 程序退出码

Linux Bash-脚本基础

如何从 Firebase 获取数据到 Recyclerview 中的片段?