鼠标右键菜单以及右键新建
修改右键菜单
右键菜单是在桌面或文件/文件夹上点击鼠标右键时出现的菜单。
随安装软件的增多而变得复杂,比如安装QQ、百度网盘等软件后,右键菜单被大量占用,导致常用操作如删除、重命名变得不便。
如何实现右键菜单自由?
对于一些正规软件,比如Bandizip,可在软件设置中直接移除右键菜单项;但是像百度网盘以及QQ等,不提供直接删除右键菜单项的选项,需手动通过注册表编辑。
注册表编辑步骤
-
打开注册表编辑器:Win + R 键,输入 regedit,回车。
-
定位到相关键值:
计算机\HKEY_CLASSES_ROOT\*\ 所有文件右键
计算机\HKEY_CLASSES_ROOT\.后缀名\ 指定后缀文件右键
计算机\HKEY_CLASSES_ROOT\DesktopBackground\ 桌面空白处右键
计算机\HKEY_CLASSES_ROOT\Directory\ (目录)资源管理器左侧、右侧 文件夹上
> 如新建、重命名、删除文件夹等,或者启动其他应用程序来处理该目录。
计算机\HKEY_CLASSES_ROOT\Folder\ (文件夹)资源管理器左侧、右侧 文件夹上
> Folder 键下的设置可以应用于任何被系统识别为“文件夹”类型对象的地方,包括特殊文件夹(如库、网络位置等)。
计算机\HKEY_CLASSES_ROOT\Directory\Background\ 桌面右键\资源管理器左侧目录的右键\右侧空白处右键
shell下的结构:
在特定项的shell下创建需要的项目名,项目名下面如果还有子项目,那就又套一层shell,将子项目建到shell里,
因为注册表限制一个项目下的子项数量最多不能超过16个,超过的不生效
在项目下创建command项目,在下面的默认键中,输入要执行的命令或者要调用的程序的路径。
在这些菜单项目下还需要用到4个键,都是字符串键值 REG_SZ
- 默认键 | MUIVerb
他们的作用都是 显示名+热键,同时设置的话,MUIVerb会覆盖默认键的配置,在都没有设置的情况下,才会使用项目名。 右键自由(&Y)
- ico
图标,可以是ico图标路径,也可以是应用程序的路径(系统会自动提取应用程序图标)
- SubCommands
表示下面还有子项目,如果不做这个声明下面的子项目是不会显示出来的,不需要键值
- Extended
声明该键,表示只有在按住shift键的情况下才显示在右键菜单中,需要注意的是它只能作用于一级菜单,在其他级别的菜单里是无效的
- LegacyDisable
禁用当前项目
至于shellex 下的 ContextMenuHandlers项 放的都是相应程序的拖放功能或者其他功能。
比如:计算机\HKEY_CLASSES_ROOT\Directory\Background\shellex\ContextMenuHandlers\ODShlExt
这个是联想商店的项目,禁用这个项目之后,在联想商店更换壁纸之后,壁纸不会自动生效,需要重启资源管理器;开启的话就可以立即生效。
- 删除不必要项:
- 删除百度云、QQ等不需要的右键菜单项。
- 注意避开系统级选项或未知的长字符键值,以免误删导致功能丢失。
- 验证效果:检查右键菜单是否已清理干净。
右键新建
在右键新建中,添加一个“新建cmd文件”。
- 修改项
计算机\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\ShellNew
下的Classes键添加文件后缀.bat
- 修改项
计算机\HKEY_CLASSES_ROOT\.cmd\
创建子项ShellNew,然后再在ShellNew下新建NullFile
字符串键,不需要值。
-
NullFile 使用默认的空文件创建新的文件
-
Data 指定新建文件时的初始化内容
-
FileName REG_SZ "C:\Users\zbf\Desktop\bat模板.cmd"
指定一个模板文件
- 指定新建文件名的话需要新建一个
计算机\HKEY_CLASSES_ROOT\cmd
项
参考自: