191 Process Monitor —— 电脑偷偷在干什么,它一条条给你记下来

一句话定位

Procmon 是微软 Sysinternals 系列里的行为监控器,把系统里每一次文件读写、注册表访问、进程启动和网络连接,按发生的时间顺序一条条列出来——不是给个百分比让你猜,而是直接告诉你"谁、什么时候、动了哪个路径"。

痛点分析

Windows 上有一堆说不清的问题:软件装完打不开、卸载了却还在、开机莫名其妙慢了两分钟、某个文件夹死活删不掉、程序一启动就报错却不说缺什么。

系统自带的工具只肯给半截答案。资源管理器说"文件正在被使用",但不说是谁;任务管理器给一个 CPU 占用百分比,看不出它在读哪个文件。于是大部分人的解法是猜——重装、重启、换软件,问题解决了也不知道为什么解决,下次照样抓瞎。

核心能力

  • 四类事件一起抓:文件系统、注册表、进程与线程、网络,默认全开
  • 过滤器是灵魂:按进程名、路径、操作类型、结果(成功/找不到/拒绝访问)层层收窄,几百万条能筛到几十条
  • 进程树与模块列表:看某个进程到底加载了哪些 DLL,谁注入进来的
  • 启动日志(Boot Log):重启后接着抓开机那几十秒,专治"开机慢"
  • 调用栈汇总:把一次读写追溯到具体是哪个模块发起的
  • 绿色单文件,三兆左右,不写注册表、不需要安装,拷走就能用

实测体验

在一台 16 GB 内存、Windows 11 的机器上按下捕获,头三十秒事件数就冲到几十万条,列表滚得看不清,内存从几十 MB 涨到三百 MB 上下。这时候直接看等于没看——必须先设过滤。

我拿它排查过三个具体的麻烦,都挺快出结果:

第一,某个软件卸载后还剩一堆右键菜单。过滤 Process is explorer.exe + Path contains 软件名,重启资源管理器,几秒钟就抓到它在读哪个注册表键,位置一目了然。

第二,一个视频文件删不掉。Ctrl+F 搜文件名,直接看到是某个索引服务在用,操作结果一列写着共享冲突,把服务停掉就删了。

第三,安装包运行时偷偷连了一个陌生域名。切到网络事件,按进程过滤,目标地址、端口、字节数全在表里。

它的操作结果那一列特别有用:NAME NOT FOUND 连着刷一大片,往往就是程序在到处找一个不存在的配置文件或者 DLL——很多"启动报错"的根因就在这一屏里。

适合谁

  • 经常帮人修电脑、需要给出"为什么坏了"而不是"重装试试"的人
  • 做软件兼容性测试、需要确认程序到底写入了哪些位置的开发者
  • 对隐私敏感、想看看某个软件有没有在后台乱连的人
  • 只想一键清理垃圾的用户——这款不适合你

需要注意的地方

  • 事件量是真的爆炸。不设过滤直接开五分钟,文件能到几个 GB 的日志,机器也会明显发沉。养成"先想好要看什么,再按过滤"的习惯。
  • 必须管理员权限,它要加载内核驱动才能看全。公司电脑上的安全软件(EDR)可能直接拦下来,这属于正常现象。
  • 界面停留在二十年前,没有暗色模式,列宽和字体都需要手动调,第一次打开会有点劝退。
  • 别常驻。它是手术刀不是日常工具,问题查完就关掉。
  • 它记录的是行为,不解释业务逻辑。看到某个进程在读一堆文件,你得自己判断这算不算异常。

小结

Process Monitor 解决的问题很窄:让 Windows 上那些"说不清"的行为变得可查。它不漂亮、不友好、上手要学,但一旦你习惯了用过滤器提问,很多过去只能靠重装解决的问题,会变成几分钟内能定位的小事。免费的微软官方工具,值得放进每个折腾电脑的人的 U 盘里。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部