Windows 7右键菜单冲突解决方案(原著:吕汀栎)

标签:
windows7右键菜单冲突it |
分类: Windows相关 |
(转自:http://blog.renren.com/blog/222889495/483298191)
Windows 7右键菜单冲突解决方案
问题描述:
装了某些可以向右键菜单添加功能的软件(比如米人、Compare It)的某些版本之后,Windows 7右键菜单在使用过程中会发生冲突:右击“打开”“以管理员身份打开”和右击“计算机”的“管理”功能无法使用,JumpList跳转列表的“任务”区功能无法使用。
解决方法:
我的上一篇文章中对右键菜单进行了介绍,在这里再重复一下:
Windows 7 操作系统的注册表里面有一系列注册表项,它们的作用就是负责文件的右键菜单的构建,意思就是说,想在右击文件(不是文件夹)时出现的菜单中添加内容,就是需要往这些注册表项中添加键值,负责文件的右键菜单的构建的注册表项分别是:
应用于文件的右键菜单项位于注册表中如下位置:
[HKEY_CLASSES_ROOT\<ProgID>\shellex\ContextMenuHandlers\]
[HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\]
[HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\]
[HKEY_CLASSES_ROOT\*\shell\]
注意:[HKEY_CLASSES_ROOT\AllFilesystemObjects\shell\]项可以用于文件和文件夹
例如:.lnk 快捷方式文件的右键菜单将从以下位置构建:
[HKEY_CLASSES_ROOT\lnkfile\shellex\ContextMenuHandlers\]
[HKEY_CLASSES_ROOT\exefile\shell\]
[HKEY_CLASSES_ROOT\exefile\shellex\ContextMenuHandlers\]
[HKEY_CLASSES_ROOT\AllFilesystemObjects\shell\]
[HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\]
[HKEY_CLASSES_ROOT\*\shell\]
[HKEY_CLASSES_ROOT\*\shellex\ContextMenuHandlers\]
这里主要讲解出问题的一项,负责右击“打开”“以管理员身份打开”和右击“计算机”的“管理”功能以及JumpList跳转列表的“任务”区功能的注册表存在于注册表项:
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\]
所以,如果出现右键菜单打开等功能无法使用的情况,将上述键值下面的未知注册表项先导出后删除,然后再一个一个导入,就能知道是哪一个注册表项出了问题。
已知不会冲突的注册表项如图:
比如米人的注册表项:
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\NamipanExt]
Compare It软件的注册表项:[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\CompareIt]
直接将其删除。
冲突征集令:
现在通过我的测试来看:
米人最新版与Windows 7的右键菜单存在冲突。
CompareIt软件的某些版本与Windows 7的右键菜单存在冲突。
大家可以把你发现的存在冲突的软件一起提交上来。让大家共同交流。
参考文献:
1 《Creating Shortcut Menu Handlers》
2 《Manage the context-menu entries for files, folders, drives and Namespace objects》http://windowsxp.mvps.org
3 《米人与Windows 7兼容性问题解决方案》