Windows 系统右键菜单假死问题解决一例

这段时间以来,我的电脑一直有个症状:在文件上点击右键,或双击文件,或选中文件后,按 Ctrl+C, Ctrl+X, Del 等快捷键操作,都会出现等待光标,持续接近半分钟。然后随后的类似操作都是立刻就能完成,变得很正常。但如果再过几分钟不做类似操作,比如写一会儿程序,再回头来操作文件,又会出现同样的症状。
这个问题搞得我很头痛,特别是写一会儿程序后,忽然要打开某个文件看一下,就要等待半分钟。这简直是不能忍受。

我开始以为是中了病毒,流氓插件什么的。但是清除了插件后仍然如此。后来,我对系统中运行的所有进程和服务都进行了排查,也没有发现异常。我怀疑可能是在点击右键的时候,触发了什么比较消耗时间的文件操作之类的,于是使用 File Monitor 这个软件监控,但是因为噪音信息太多,一直没有分析出个所以然出来。

今天又用 File Monitor 试了一次,终于找到了问题所在。下面写一下详细的分析步骤。
首先,在监控之前,将所有可能干扰的进程和服务都关闭了。等待一会儿,估计在文件上点击右键会出现延时的时候,开启 FileMonitor,在一个文件上点击了一下右键,等光标不再是沙漏后,赶紧切换到 FileMonitor 按下 Ctrl +E 停止监控。然后将 FileMonitor 的日志保存出来,再导入 Excel 中。经过简单的筛选,很快几个网络路径映入眼帘:

filemon.JPG

我们看到,这里有一个对 \\server\...\Flash Player 8.exe 的访问。原因很明显了,在点击右键的时候,系统判断该文件的打开方式,但不明白为什么连这些打开方式对应的程序的路径也访问了一遍。而因为我们网络配置的原因,访问 \\server 总是会触发一次 Net BIOS 协议的搜索,类似于有时候网上邻居中访问比较慢的现象。但是有了缓存后,计算机能在短时间内缓存该路径的信息,所以后续的访问都比较正常。
搜索注册表,在 \HKEY_CLASSES_ROOT\Applications\ 下找到了 Flash Player 8.exe 的这个键值。直接删除了整个项,重启后问题解决。

经验小结
1. 在做系统分析前一定要关闭能关闭的程序和服务,尽量降低噪音的干扰。
2. 不要随便直接执行网络路径中的程序,该程序很可能莫名其妙的变成你本机某种文件的默认关联程序,导致机器出现上述类似的问题。

posted on 2006-10-09 11:50  NeilChen  阅读(4635)  评论(0编辑  收藏  举报

导航