如何查找和杀死一个进程
2005-12-31 18:53
375 查看
函数说明:
CreateToolhelp32Snapshot 创建系统快照
Process32First 查找第一个进程
Process32Next 查找下一个进程
OpenProcess 打开进程
GetExitCodeProcess 取得进程终止状态
TerminateProcess 终止进程
CloseHandle 关闭对象句柄
//=========================================
bool KillProcess()
{
HANDLE hSnapshot;
PROCESSENTRY32 lppe;
//创建系统快照
hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL);
if (hSnapshot == NULL) return false;
//初始化 lppe 的大小
lppe.dwSize = sizeof(lppe);
//查找第一个进程
if (!Process32First(hSnapshot, &lppe)) return false;
do {
if (AnsiString(lppe.szExeFile).Trim().UpperCase()=="PROJECT1.EXE") {
DWORD xCode;
HANDLE hProc = OpenProcess(PROCESS_TERMINATE, false, lppe.th32ProcessID);
if (hProc && GetExitCodeProcess(hProc, &xCode)) {
TerminateProcess(hProc, xCode);
break;
}
}
} while (Process32Next(hSnapshot, &lppe)); //查找下一个进程
if (!CloseHandle(hSnapshot)) return false;
return true;
}
CreateToolhelp32Snapshot 创建系统快照
Process32First 查找第一个进程
Process32Next 查找下一个进程
OpenProcess 打开进程
GetExitCodeProcess 取得进程终止状态
TerminateProcess 终止进程
CloseHandle 关闭对象句柄
//=========================================
bool KillProcess()
{
HANDLE hSnapshot;
PROCESSENTRY32 lppe;
//创建系统快照
hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL);
if (hSnapshot == NULL) return false;
//初始化 lppe 的大小
lppe.dwSize = sizeof(lppe);
//查找第一个进程
if (!Process32First(hSnapshot, &lppe)) return false;
do {
if (AnsiString(lppe.szExeFile).Trim().UpperCase()=="PROJECT1.EXE") {
DWORD xCode;
HANDLE hProc = OpenProcess(PROCESS_TERMINATE, false, lppe.th32ProcessID);
if (hProc && GetExitCodeProcess(hProc, &xCode)) {
TerminateProcess(hProc, xCode);
break;
}
}
} while (Process32Next(hSnapshot, &lppe)); //查找下一个进程
if (!CloseHandle(hSnapshot)) return false;
return true;
}
相关文章推荐
- Linux如何查找杀死僵死进程
- Linux如何查找杀死僵死进程
- 如何查找SHELL的进程号并杀死
- 如何实现一个不会被杀死的进程
- Linux如何查找杀死僵死进程
- Linux如何查找杀死僵死进程
- 查找和杀死一个进程CreateToolhelp32Snapshot函数
- linux下如何自动检测并重新启动一个死掉的进程,然后再把它杀死:)(shell脚本实现)
- 在.NET中,如何查找一个进程的父进程
- 如何杀死,暂停,继续一个后台进程
- linux下如何自动检测并重新启动一个死掉的进程,然后再把它杀死
- 如何从命令行杀死一个进程
- mac下如何查看指定端口被谁占用并且杀死该进程
- 如何杀死Chrome进程并重启Chrome
- 查找端口占用,杀死进程
- window下如何杀死指定端口 的进程
- MFC 查找一个进程 打开进程 关闭进程
- 如何识别一个进程是否为托管进程
- 如何杀死Word,Excel等进程?
- 如何创建一个后台进程