TerminateProcess函數是Windows API中的一個函數,用于終止一個指定的進程。以下是一個示例代碼,用于通過調用TerminateProcess函數來關閉任意程序:
#include <Windows.h>
#include <iostream>
int main()
{
DWORD processId;
// 獲取目標程序的進程ID,例如Notepad程序的進程ID
std::cout << "請輸入目標程序的進程ID:";
std::cin >> processId;
// 打開目標進程
HANDLE hProcess = OpenProcess(PROCESS_TERMINATE, FALSE, processId);
if (hProcess == NULL)
{
std::cout << "打開進程失敗!錯誤代碼:" << GetLastError() << std::endl;
return 1;
}
// 終止目標進程
if (!TerminateProcess(hProcess, 0))
{
std::cout << "終止進程失敗!錯誤代碼:" << GetLastError() << std::endl;
CloseHandle(hProcess);
return 1;
}
// 關閉句柄
CloseHandle(hProcess);
std::cout << "進程已成功終止!" << std::endl;
return 0;
}
代碼中首先使用OpenProcess函數打開目標進程,參數PROCESS_TERMINATE用于指定訪問權限。然后使用TerminateProcess函數終止目標進程,參數0表示退出代碼。最后使用CloseHandle函數關閉句柄。