近日遇到了一个很诡异的问题:在Win7 下右键单击单字符名(如“啊”“A”“1”等,不限语言)文件夹,资源管理器就会崩溃。但经不断考证,问题已经成功解决。

条件:1、文件夹 2、单个字符(中英文及数字)作为名称 3、在文件夹图标上点击右键

经搜索,在微软问答社区上发现了类似问题:http://social.answers.microsoft.com/Forums/zh-CN/w7programszhcn/thread/db5b8126-a72d-49a7-94e8-644a732c32a9

错误进程 ID: 0x1450
错误应用程序启动时间: 0x01cb896541dfd435
错误应用程序路径: C:\Windows\explorer.exe
错误模块路径: C:\Windows\system32\KERNELBASE.dll
报告 ID: 86cdd6b1-f558-11df-b0e6-00e0b0f4bf2b
新建文件夹取名"a"选中点右键资源管理器崩溃

支持工程师在那里未能提出有效的解决方案。

系统提示是:

Microsoft C++ Debug Library

Program: C:\Windows\Explorer.exe

This application has requested the Runtime to terminate it in an unusual way.

Please contact the application's support team for more information.

(Press Retry to debug the application)

下边是“中止”“重试”“忽略”三个按钮,无论点哪一个,都会继续出现如下提示。

Runtime error!

Program: C:\Windows\Explorer.exe

This application has requested the Runtime to terminate it in an unusual way.

Please contact the application's support team for more information.

“确定”

点击确定,资源管理器就挂了。

经过试验,在两个及两个字符以上命名的文件夹上点右键,均不会引起错误;在任意文件上点击右键也不会引起故障。对有问题的文件夹使用RAR进行文件操作,以及不使用右键进行的重命名、删除等操作,同样不会报错——因此排除磁盘问题,将重点集中在右键菜单上。

通过对注册表中对应项

(Copy from 电脑爱好者论坛 http://bbs.cfan.com.cn/thread-782200-1-1.html

“HKEY_CLASSES_ROOT\Directory\shell”

“HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers”

“HKEY_CLASSES_ROOT\Folder\shell”

“HKEY_CLASSES_ROOT\Folder\shellex\ContextMenuHandlers”

中扩展菜单的逐项删除排查后,发现问题由WinMount这款软件为文件夹添加的右键菜单引起。

解决方案:删除注册表中以下项

[HKEY_CLASSES_ROOT\Directory\shellex\ContextMenuHandlers\WinMTExt]

后记:这个问题我已经反映给WinMount开发小组,目前正在等待对方修复BUG并答复。