jem*_*per 10 c++ windows termination process
我一直在搜索Win32 API C++函数TerminateProcess()的示例,但找不到任何.
我一般不熟悉Win32 API,所以我想问一下这里比我更好的人能给我看一个例子,
如果你不熟悉C++,那么C#等价物也会有所帮助.
Don*_*eba 18
要回答原始问题,要通过其PID检索进程句柄并调用TerminateProcess,您需要如下代码:
BOOL TerminateProcessEx(DWORD dwProcessId, UINT uExitCode)
{
DWORD dwDesiredAccess = PROCESS_TERMINATE;
BOOL bInheritHandle = FALSE;
HANDLE hProcess = OpenProcess(dwDesiredAccess, bInheritHandle, dwProcessId);
if (hProcess == NULL)
return FALSE;
BOOL result = TerminateProcess(hProcess, uExitCode);
CloseHandle(hProcess);
return result;
}
Run Code Online (Sandbox Code Playgroud)
请记住,TerminateProcess不允许其目标在有效状态下清理和退出.使用前请三思而后行.