C++实现找到进程并关闭

180it 2020-03-10 PM 284℃ 0条

include <windows.h>

include <stdio.h>

include <TLHELP32.H>

include <SHLWAPI.H >

int main()
{
PROCESSENTRY32 pe32;
//定义一个PROCESSENTRY32结构

pe32.dwSize = sizeof(pe32);
//先设置它的大小

HANDLE hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
//创建一个系统进程快照包括所有的进程

if (0)
{
printf("调用进程快照失败!n");
}

BOOL bMore = Process32First(hProcessSnap, &pe32);
while (bMore)
{
if (!(strcmp(pe32.szExeFile,"QQ.exe"))) //在刚才的进程快照中找到一个和QQ句柄相等(就是QQ)的进程
goto CloseQQ; //去执行关闭QQ进程的语句(在下边)
bMore = Process32Next(hProcessSnap, &pe32);
}
printf("QQ没有运行!"); //木有QQ进程

CloseHandle(hProcessSnap);//关闭打开的句柄
return 0;

CloseQQ:

HANDLE hQQ = OpenProcess(PROCESS_ALL_ACCESS, false, pe32.th32ProcessID);
//打开QQ进程,取得QQ进程句柄

TerminateProcess(hQQ, 0);
//终止QQ进程

CloseHandle(hQQ); //关闭打开的QQ句柄
}

来源http://blog.sina.com.cn/s/blog_a402a61e010118uv.html

支付宝打赏支付宝打赏 微信打赏微信打赏

如果文章或资源对您有帮助,欢迎打赏作者。一路走来,感谢有您!

标签: none

C++实现找到进程并关闭