1.任务管理器的“结束任务”实际上就是强制终止进程,它所使用的是一个叫做TerminateProcess()的Win32 API函数以下是此函数的定义:

BOOL TerminateProcess(
HANDLE hProcess; // 将被结束进程的句柄
UINT uExitCode; // 指定进程的退出码
);

2.为了得到要杀掉的进程的句柄,首先要取得该进程的句柄,即采用以下函数获取进程的句柄:
HANDLE OpenProcess(
DWORD dwDesiredAccess, // 希望获得的访问权限
BOOL bInheritHandle, // 指明是否希望所获得的句柄可以继承
DWORD dwProcessId // 要访问的进程ID
);
在调用TerminateProcess()之前,必先调用OpenProcess(),而OpenProcess()的参数表中的 dwProcessId是在系统范围内唯一确定的。
3.在每次调用OpenProcess()的时候,先检查dwProcessId是否为要防被关闭的进程的ID(利用进程间通讯机制),如果是的话就简单地 返回一个错误码就可以了,任务管理器拿进程的句柄,自然无法关闭该进程了。
4.至于实现就采用全局HOOK的办法,《windows核心编程》对此讲述了好几种方法,有兴趣的可以参照。

防止进程被任务管理器关掉的办法相关推荐

  1. Windows平台下的session0创建进程的问题与解决办法

    Windows平台下的session0创建进程的问题与解决办法 参考文章: (1)Windows平台下的session0创建进程的问题与解决办法 (2)https://www.cnblogs.com/ ...

  2. -bash: fork: Cannot allocate memory问题,进程数满了的解决办法

    -bash: fork: Cannot allocate memory问题,进程数满了的解决办法 参考文章: (1)-bash: fork: Cannot allocate memory问题,进程数满 ...

  3. 【技巧】windows11任务栏无法打开任务管理器的解决办法

    效果图 方法 对着任务栏的win图标右键,"任务管理器" 后言 之前的方法有点麻烦,现在直接对着win图标右键就行了. win11任务栏右键没有任务管理器的解决办法 - 添加win ...

  4. win11任务栏右键没有任务管理器的解决办法 - 添加win11任务栏右键功能

    更方便的解决办法 [技巧]windows11任务栏无法打开任务管理器的解决办法_Rudon滨海渔村的博客-CSDN博客效果图方法对着任务栏的win图标右键,"任务管理器"后言之前的 ...

  5. sleep mysql_mysql中有大量sleep进程的原因与解决办法

    mysql中有大量sleep进程的原因与解决办法 mysql服务器中有大量的sleep进程, 本文分析下mysql出现大sleep进程原因分析与解决方法. 可能的原因: 造成睡眠连接过多的原因? 1. ...

  6. 电脑Svchost.exe 进程占CPU100% 的解决办法

    Windows Update诊断和修复修复工具 http://support.microsoft.com/mats/windows_update/zh-cn Svchost.exe占用CPU100%的 ...

  7. MSDN中Enumerating All Processes枚举所有进程事例编译错误解析办法

    MSDN中http://msdn.microsoft.com/en-us/library/ms682629(VS.85).aspx 枚举全部进程事例代码编译出现如下错误的原因及解决办法 Process ...

  8. linux交互式进程初始化失败怎么办,“登录进程初始化失败 交互式登录进程初始化失败”的解决办法...

    最近似乎出现"登录进程初始化失败 交互式登录进程初始化失败"错误,造成Windows 7操作系统无法正常登录.下面西部e网整理了一下解决这个问题的多种方法,供参考. 问题原因: 1 ...

  9. linux交互式进程初始化失败怎么办,登录进程初始化失败交互式登录进程初始化失败的解决办法...

    最近似乎出现"登录进程初始化失败 交互式登录进程初始化失败"错误,造成Windows 7操作系统无法正常登录.下面西部e网整理了一下解决这个问题的多种方法,供参考. 问题原因: 1 ...

最新文章

  1. monkey自定义脚本实践
  2. 应用中心最佳实践之——使用应用组完成多集群一键部署
  3. mysql8.0.12插件_MySQL8.0.12 安装及配置
  4. pcb天线和纯铜天线_蓝牙模块采用陶瓷天线和PCB天线的区别
  5. 为了更准确的验证码而奋斗-云大urp教务系统大作战(1.5)
  6. 阿里云移动推送iOS
  7. 一个IT公司技术总监的职责
  8. jad158g class文件转java文件
  9. 天梯赛L2-016 愿天下有情人都是失散多年的兄妹
  10. 团队建设的不同阶段与管理方式
  11. 页面加载数学公式,mathjax转html
  12. 思科交换机强制恢复出厂设置(清密码)
  13. 计算机锁定不能强制选项无法关机,Win10无法关机只能按电源强制关机的解决方法...
  14. python绘制不同风格的分级统计图(Choropleth map)
  15. 思科交换机 DHCP 服务配置
  16. (Fabric学习坑)com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;CLjava/lang/Object;
  17. static变量和普通变量的区别
  18. 六、redis中AKF问题解决方案
  19. 从玩法、叙事、主题三个角度浅要谈谈《死亡搁浅》的好与坏
  20. C++OpenCV系统学习(17)——图像分割与抠图(6)——视频背景替换

热门文章

  1. 干货 | 滴滴 数据分析原来是这样做的!
  2. Web3中文|42岁退休身价百亿,王慧文高调复出再创业只为Ta
  3. 《 水调歌头·明月几时有》古词鉴赏
  4. 山羊拉丁文 - [Python3]
  5. 看了让人吐血的146个脑筋急转弯问题
  6. 中国彻底放弃2G网络仍需十年时间
  7. ccc-Brief Introduction of Deep Learning-李宏毅(6)
  8. 鸿蒙os2.0基于安卓,外媒实测总结,目前华为鸿蒙OS 2.0依旧是基于安卓框架
  9. 教主黄仁勋亮相GTC China:英伟达已售出15亿块GPU!重磅发布TensorRT 7
  10. 计算机神书『编码:隐匿在计算机软硬件背后的语言』