工具/软件 WinDbg如何查看进程是自杀还是他杀?! [复制链接]

游戏小哥
超级版主
技术中心 20968 0 2019-8-19 19:48:30
在工作中,经常会遇到发现一些进程无故退出,为了排查问题出现的原因,却不知道这个进程为什么退出,当你怀疑是其他进程结束时,又无从下手,因为被其他进程结束时,没有可查看的位置。
Process Monitor虽然强大,但只能看到进程启动链、看不到结束链。
这里分享一个工具 gflags.exe ,用于查看进程被其他哪个进程结束的。
1、首先你需要安装Debugging Tools for Windows里面有大名鼎鼎的Windbg哦,不过今天要用的是其中的gflag.exe。
下载地址:

x86位版本下载:【微软官方安装版】


2、安装之后没有快捷方式,需要进目录
64位   C:\Program Files\Windows Kits\8.0\Debuggers\x64\
32位   C:\Program Files\Windows Kits\8.1\Debuggers\x86\
双击打开gflags.exe,选择 Silent ProcessExit 标签。
3、在Image栏里输入你希望监视的进程名。比如:notepad.exe。(按Tab
4、勾选 Enable Silent Process Exit Monitoring(如果这个勾选是灰的,说明上一步没按TAB)
5、点击确定、OK或者Apply。
123.png
上面设置的是“记事本”的进程名,开一次记事本,直接关闭。以及开记事本用任务管理器结束进程。
然后到“Windows日志-应用程序”中看一下效果:
1、进程自己退出的,事件ID是3000
2、进程被其他进程结束的,事件ID是3001
456.png
配合 Process Monitor 工具,就能知道完整的进程启动和结束链了~!

您需要登录后才可以回帖 立即登录
高级模式
返回
统计信息
  • 会员数: 29070 个
  • 话题数: 9636 篇
  • 巅峰数: 5500 人