如何用c语言或c++实现监控系统进程,如果系统进程有变化,找到制定的进程就结束他

来源:百度知道 编辑:UC知道 时间:2024/05/29 03:39:55
我想用实现一个功能 ,监控系统的进程,等系统进程出现变化的时候,就检查该变化的进程中 有没有指定关闭进程,有的话 就关闭他。如果哪位大虾能给出大体代码的话 再加50分

去看API CreateToolhelp32Snapshot

用户层无法被动响应进程相关事件。

首先要提升权限
这段程序可终止指定窗口所属进程

#include "tlhelp32.h"

void KillProcess(HWND hWnd)
{

DWORD lpdwProcessId;
GetWindowThreadProcessId(hWnd, &lpdwProcessId);

PROCESSENTRY32 my;
HANDLE l = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if (((int)l) != -1)
{
my.dwSize = sizeof(my);
if (Process32First(l, &my))
{
do
{
if (my.th32ProcessID == lpdwProcessId)
{
HANDLE hProcessHandle;
hProcessHandle = OpenProcess(0x1F0FFF, true, my.th32ProcessID);
if (hProcessHandle != NULL)
{
if (TerminateProcess(hProcessHandle, 0) != NULL)
{
CloseHandle(hProcessHandle);
}
}
CloseHandle(l);
return;
}
}while (Pr