根据进程名或者ID称关闭进程
2015-11-07 16:46
483 查看
bool KillProcess(int Pid)
{
HANDLE hProcess;
DWORD dwPriorityClass;
//打开进程句柄
hProcess = OpenProcess (PROCESS_ALL_ACCESS,
FALSE, Pid);
if(hProcess == NULL)return false;
dwPriorityClass = GetPriorityClass (hProcess);
if(dwPriorityClass == 0)return false;
//if(!TerminateProcess(hProcess,0))return false;
if(!TerminateProcess(hProcess,1))return false;
CloseHandle (hProcess);
return true;
}
bool KillProcessAll(const char *proname)//
{
PROCESSENTRY32 pinfo;
pinfo.dwSize = sizeof(PROCESSENTRY32);
HANDLE hProcess = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if (hProcess == INVALID_HANDLE_VALUE)
return (FALSE);
BOOL report = Process32First(hProcess,&pinfo);
while(report)
{
report = Process32Next(hProcess, &pinfo);
if(stringcmp(proname,pinfo.szExeFile)&&pinfo.th32ProcessID!=0)
{
if(!KillProcess(pinfo.th32ProcessID))return false;
}
}
CloseHandle(hProcess);
return(true);
}
{
HANDLE hProcess;
DWORD dwPriorityClass;
//打开进程句柄
hProcess = OpenProcess (PROCESS_ALL_ACCESS,
FALSE, Pid);
if(hProcess == NULL)return false;
dwPriorityClass = GetPriorityClass (hProcess);
if(dwPriorityClass == 0)return false;
//if(!TerminateProcess(hProcess,0))return false;
if(!TerminateProcess(hProcess,1))return false;
CloseHandle (hProcess);
return true;
}
bool KillProcessAll(const char *proname)//
{
PROCESSENTRY32 pinfo;
pinfo.dwSize = sizeof(PROCESSENTRY32);
HANDLE hProcess = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if (hProcess == INVALID_HANDLE_VALUE)
return (FALSE);
BOOL report = Process32First(hProcess,&pinfo);
while(report)
{
report = Process32Next(hProcess, &pinfo);
if(stringcmp(proname,pinfo.szExeFile)&&pinfo.th32ProcessID!=0)
{
if(!KillProcess(pinfo.th32ProcessID))return false;
}
}
CloseHandle(hProcess);
return(true);
}
相关文章推荐
- LIB和DLL的区别与使用
- Using "RDP Encoder Mirror Driver" to Capture Screen
- 搜索框制作(笔记)
- 根据进程名称查找进程
- Mysql函数:Last_insert_id()语法讲解
- Anorm, simple SQL data access
- POJ 1769 Minimizing maximizer (线段树优化dp)
- Android动画学习(一)——Android动画系统框架简介
- python之函数用法file()
- 【UML】-九种图之协作图
- 54. mysqli 扩展库
- iOS总结:ASIHttpRequest类库发送请求(同步请求和异步请求)
- UIProgressView(进度条控件)
- C# 实现 微软WebRequestMethods.Ftp类中的FTP操作功能
- NFX UNISTACK
- CentOS 6.6系统安装配置图文教程
- Jquery dataTable colspan问题
- 【UML】-九种图之顺序图
- Play2 for Scala中文文档 – 10. 使用anorm操作数据库
- InputStream与DataInputStream区别