温馨提示×

TerminateProcess实现关闭任意程序

小云
89
2023-09-28 09:46:37
栏目: 编程语言

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函数关闭句柄。

0