TerminateProcess 终止|杀死其它进程
2016-03-01 16:58
399 查看
这个函数可以用来终止或者说杀死一个进程,它不会留给进程及其所有线程清理的时间,系统会马上终止(杀死)这个进程的所有线程,致使进程终止。在使用此函数前我们必须要调用OpenProcess函数来获得我们要终止(杀死)进程的句柄,并且要获得进程的PROCESS_TERMINATE权限。
函数原型:
BOOL TerminateProcess(HANDLE hProcess,UINT uExitCode)
参数说明:
1、hProcess:要终止(杀死)进程的句柄,需要有PROCESS_TERMINATE权限。
2、uExitCode:设置进程的退出值。可通过GetExitCodeProcess函数得到一个进程的退出值。
返回值:
如果失败将返回FALSE(0),而成功将返回一个非零值。
注:不要用if(ret==TRUE)去检测函数是否调用成功,因为函数调用成功会返回一个非零值,但不一定是TRUE(1)
使用例子:
//此函数通过传入的进程ID来终止(杀死)进程
BOOL KillProcess(DWORD ProcessId)
{
HANDLE hProcess=OpenProcess(PROCESS_TERMINATE,FALSE,ProcessId);
if(hProcess==NULL)
return FALSE;
if(!TerminateProcess(hProcess,0))
return FALSE;
return TRUE;
}
函数原型:
BOOL TerminateProcess(HANDLE hProcess,UINT uExitCode)
参数说明:
1、hProcess:要终止(杀死)进程的句柄,需要有PROCESS_TERMINATE权限。
2、uExitCode:设置进程的退出值。可通过GetExitCodeProcess函数得到一个进程的退出值。
返回值:
如果失败将返回FALSE(0),而成功将返回一个非零值。
注:不要用if(ret==TRUE)去检测函数是否调用成功,因为函数调用成功会返回一个非零值,但不一定是TRUE(1)
使用例子:
//此函数通过传入的进程ID来终止(杀死)进程
BOOL KillProcess(DWORD ProcessId)
{
HANDLE hProcess=OpenProcess(PROCESS_TERMINATE,FALSE,ProcessId);
if(hProcess==NULL)
return FALSE;
if(!TerminateProcess(hProcess,0))
return FALSE;
return TRUE;
}
相关文章推荐
- 分享一张innodb结构图
- jsoncpp基础
- lvs持久性工作原理和配置
- Lua_第 11 章 数据文件与持久化
- 嵌入式linux:linux select函数与socket
- 用 JSQMessagesViewController 创建一个 iOS 聊天 App - 第 1 部分
- 递归的基本原理(非常有意思)
- 我的软件工程课程目标
- 持续集成:TestNG组织如何测试用例
- 笔试题之ejb
- 将秒转换为天,小时,分钟,秒。
- eclipse中jrebel安装+破解+配置
- Xutils3.0请求网络数据工具类
- java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener问题解决
- java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener问题解决
- java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener问题解决
- PopUpWindow使用详解(一)——基本使用
- POJ 1240 Pre-Post-erous!(组合数学+递归)
- 自定义对话框
- 十五、顺序执行动作重复动作