Windows注册表增加右键多级菜单

前言全局说明


一、说明

环境:

Windows 11 家庭版 23H2 22631.3737
Windows 7 旗舰版

二、注册表说明

2.1 项说明

HKEY_CLASSES_ROOT*:系统所有文件,右键系统任一文件都会添加右键菜单
HKEY_CLASSES_ROOT\.txt:在.txt文件,添加右键菜单
HKEY_CLASSES_ROOT\AllFilesystemObjects:系统所有文件和文件夹,右键任一文件或者文件夹都会添加右键菜单
HKEY_CLASSES_ROOT\Folder:所有文件夹,添加右键菜单
HKEY_CLASSES_ROOT\Directory:所有文件夹,添加右键菜单
HKEY_CLASSES_ROOT\Directory\Background:所有文件夹空白处,添加右键菜单

2.2 键名说明

SubCommands: 创建多级(层叠)菜单,当前项下有子菜单。没有子项这个属性可以不加。(可选)
icon :右键菜单图标(可用指定 .ico 或 .exe 文件)(可选)
MUIVerb:指定右键菜单显示名字,不加默认为项名(可选)
Position: 指定菜单标题位置,值:Top, Middle(默认), Bottom 三种(可选)

Position 效果:
image


三、创建,一级菜单

3.1 新建 一级菜单 项(注册表文件夹)

image

"一级菜单" 这个名字你随意

3.2 新建 command 执行的命令

image

必须用 command 这个名字

3.3 效果

image


四、创建 Win7 多级菜单

4.1 win7_多级菜单

文件名:win7_多级菜单.reg

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单]
"SubCommands"=""
@=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell]
@=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级]
"SubCommands"=""
@=""
"MUIVerb"="2级菜单"

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级]
@=""
"MUIVerb"="3级菜单"
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级]
@=""
"MUIVerb"="4级菜单"
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级\shell]
@=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级\shell\5级]
"SubCommands"=""
"MUIVerb"="5级菜单"

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级\shell\5级\shell]
@=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级\shell\5级\shell\打开cmd]
@=""
"MUIVerb"="打开cmd.exe"

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级\shell\5级\shell\打开cmd\command]
@="cmd.exe"

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级2]
"MUIVerb"="4级菜单第2个"
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级2\shell]
@=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级2\shell\打开CMD]
"MUIVerb"="打开CMd"

[HKEY_CLASSES_ROOT\Directory\Background\shell\1级菜单\shell\2级\shell\3级\shell\4级2\shell\打开CMD\command]
@="cmd.exe"

在Win7下,要注意的点:

1.每一级都需要用 MUIVerb 指定显示名称
2.如果项里增加了 SubCommands 就不要再项的默认值里修改。如果在第3级增加默认显示名,那么后面第4级和以后的就不会显示了

4.2 右键效果:

image
image

4.3 注册表,效果:

image

五、创建 Win11 多级菜单

5.1 Win11_多级菜单

文件名:Win11_多级菜单.reg

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\1]
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2]
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3]
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4]
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4\shell]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4\shell\5]
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4\shell\5\shell]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4\shell\5\shell\6]
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4\shell\5\shell\6\shell]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4\shell\5\shell\6\shell\7]
"SubCommands"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4\shell\5\shell\6\shell\7\shell]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4\shell\5\shell\6\shell\7\shell\打开cmd]

[HKEY_CLASSES_ROOT\Directory\Background\shell\1\shell\2\shell\3\shell\4\shell\5\shell\6\shell\7\shell\打开cmd\command]
@="cmd.exe"

5.2右键效果:

image

5.3 注册表,效果:

image


六、Win7 和 Win11 多级菜单,区别、注意点

1.如果 MUIVerb 和 默认值 都有内容,优先显示 MUIVerb 值内容

6.1 Win7 菜单 有 SubCommands 键时,不要填写默认,要留空(win11 无此限制)

如果同时修改,将不显示子菜单
image

6.2. Win7 多级菜单需要用 MUIVerb 指定显示名称(win11 无此限制)

2级菜单
image
3级菜单
image
最后一级命令时,可以指定默认值显示名称
image

6.3 最多可以多少层菜单

最多是多少层没有试过,一般三、四层级就够用了,示例中最多设置七层还是正常的。
按照微软习惯,文件名至多255字符,
猜测,层级也应该差不多是 128 或255 层。
更详细的可以参考,
微软官方,注册表说明:
https://learn.microsoft.com/zh-cn/windows/win32/sysinfo/registry-value-types



免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。




参考、来源:
https://www.cnblogs.com/mq0036/p/8398594.html
https://www.cnblogs.com/getValue/p/14381631.htm
https://cn.bing.com/search?q=BAT002%3A在右键菜单新建中添加【Windows批处理文件】&PC=U316&ntref=1&FPIG=878B96B15DD544C28E03E2BBB5417D02&first=30&FORM=PORE



posted @ 2024-11-20 13:28  悟透  阅读(18)  评论(0编辑  收藏  举报