用C++结束进程(恶搞你的计算机!!!!)

刚才在网上搜东西,发现了一个命令——ntsd,可以结束进程。当然我们可以编写一个程序来执行这个命令:
***********************************************************
#include<windows.h>
void main()
{
 system("ntsd -c q -pn explorer.exe");
}
***********************************************************
短短3行代码就让我不得不重启电脑,呵呵。因为它结束了进程 explorer.exe   看不到桌面了。
下面来看看ntsd命令的具体用法
ntsd从Windows 2000开始就是系统自带的进程调试工具,在system32目录下。NTSD的功能非常的强大,用法也比较复杂,但如果只用来结束一些进程,那就比较简单了。在Windows中只有System、SMSS.EXE和CSRSS.EXE不能杀。前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它。lsass.exe也不要杀掉,它是负责本地账户安全的。被调试器附着的进程会随调试器一起退出,所以可以用来在命令行下终止进程。
 
方法一:利用进程的PID结束进程

  命令格式:ntsd -c q -p pid 

  命令范例: ntsd -c q -p 1332 (结束explorer.exe进程)

  范例详解:explorer.exe的pid为1332,但是如何获取进程的pid呢?在CMD下输入TASKLIST就可以获取当前任务管理器所有进程的PID。或者打开任务管理器,在菜单栏,选择“查看”—“选择列”,在打开的选择项窗口中将“PID(进程标识符)”项选择钩上,这样任务管理器的进程中就会多出PID一项了。(PID的分配并不固定,是在进程启动是由系统随机分配的,所以进程每次启动的进程一般都不会一样。)
方法二:利用进程名结束进程

  命令格式:ntsd -c q -pn ***.exe (***.exe 为进程名,exe不能省)

  命令范例:ntsd -c q -pn explorer.exe

 
 
另外的能结束进程的DOS命令还有taskkill和tskill命令:
 
 taskkill:

  命令格式: taskkill /pid 1234 /f ( 也可以达到同样的效果。)
  描述:

  这个命令行工具可用来结束至少一个进程。

  可以根据进程 id 或图像名来结束进程。

  参数列表:

  /S system 指定要连接到的远程系统。

  /U [domain\]user 指定应该在哪个用户上下文

  执行这个命令。

  /P [password] 为提供的用户上下文指定

  密码。如果忽略,提示输入。

  /F 指定要强行终止

  进程。

  /FI filter 指定筛选进或筛选出查询的

  的任务。

  /PID process id 指定要终止的进程的

  PID。

  /IM image name 指定要终止的进程的

  图像名。通配符 '*'

  可用来指定所有图像名。

  /T Tree kill: 终止指定的进程

  和任何由此启动的子进程。

  /? 显示帮助/用法。
 
   Tskill  结束进程。

  TSKILL processid | processname [/SERVER:servername] [/ID:sessionid | /A] [/V]

  processid 要结束的进程的 Process ID。

  processname 要结束的进程名称。

  /SERVER:servername 含有 processID 的服务器(默认值是当前值)。

  使用进程名和 /SERVER 时,必须指定

  /ID 或 /A

  /ID:sessionid 结束在指定会话下运行的进程。

  /A 结束在所有会话下运行的进程。

  /V 显示正在执行的操作的信息

原文链接: https://www.cnblogs.com/zzili/archive/2012/12/06/6663380.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    用C++结束进程(恶搞你的计算机!!!!)

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/71676

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月9日 下午2:59
下一篇 2023年2月9日 下午2:59

相关推荐