<返回更多

定制右键功能,看这一篇就够了

2020-09-28    
加入收藏

前言

注册表参数

1. 参数和解释

定制右键功能,看这一篇就够了

注册表参数详解

2. 验证参数

为了验证上述参数我写了一个go的脚本来打印通过修改注册表时右键参数具体值。代码如下:

package main
import (	"fmt"
	"os"
)func main() {
	for _, v := range os.Args {
		fmt.Printf("[%s]n", v)
	}	fmt.Scanln()}

为方便copy,我把下面注册表的值放出来:

"C:regeditregedit.exe" "*: %*" "0: %0" "1: %1" "2: %2" "3: %3" "4: %4" "5: %5" "6: %6" "7: %7" "8: %8" "9: %9" "D: %D" "H: %H" "I: %I"  "L: %L" "S: %S" "V: %V" "W: %W"

按照下图HKEY_CLASSES_ROOT*shellregeditTestcommand中添加上面那个命令行,测试右键单个文件结果如下:

定制右键功能,看这一篇就够了

验证注册表参数

  1. 右击文件为快捷方式时参数列表才有数据,已经测过不支持%10,右击文件时不会出现参数列表值。
  2. 右击文件为快捷方式时%W会有不一样的结果,当起始位置为空结果为快捷方式所在目录,当起始位置有填目录则结果就是填写的值。看下图:
定制右键功能,看这一篇就够了

参数列表和%W的作用

3.注册表参数总结

  1. 知道每个参数的含义,那么在运行自己写的程序时就知道注册表里面的参数如何填写,不会有问题。
  2. 关于第二到第九的参数以及%W的特殊之处,我也是试出来的,因为看别人的博文写的不清楚。所以最好多查查资料搞清楚具体含义再使用会避免很多麻烦。

右击文件菜单配置

1. 常用配置如下

定制右键功能,看这一篇就够了

注册表值的解释

2. 结果截图如下所示,当配置Single时多选文件右键会隐藏配置的菜单:

定制右键功能,看这一篇就够了

配置当单选时才会出现的右键菜单

多级菜单

先添加一级菜单

在HKEY_CLASSES_ROOT*shellone下,增加一个子项SubCommands=two1;two2;two3,示例这三个值会在下一步作为注册表名。

定制右键功能,看这一篇就够了

添加一级菜单

再添加二级菜单

在HKEY_LOCAL_macHINESOFTWAREMicrosoftwindowsCurrentVersionExplorerCommandStoreshell下面添加如下几个项,还可以添加三级菜单。

定制右键功能,看这一篇就够了

添加二级菜单

还可以添加三级菜单

添加三级菜单也是在HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshell下面,如果需要可以添加更多级菜单。

定制右键功能,看这一篇就够了

多级菜单

看下效果图

看下图,需要执行命令,则在图中对应的command中添加命令即可。

定制右键功能,看这一篇就够了

多级菜单效果图

通过注册表文件创建

可以先通过注册表工具先创建好可用的注册表配置,再右键一个个导出,然后用记事本把这些注册表合并在一起即可。

定制右键功能,看这一篇就够了

导出注册表

下面是导出的配置组合,保存成.reg文件,双击执行即可完成注册表配置。

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT*shellone]
"icon"="C:\regedit\seting.ico""SubCommands"="two1;two2;two3""MuiVerb"="一级菜单"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo1]
"MUIVerb"="二级菜单1""icon"="C:\regedit\seting.ico"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo1command]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo2]
"MUIVerb"="二级菜单2""icon"="C:\regedit\seting.ico"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo2command]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo3]
"MUIVerb"="二级菜单3""icon"="C:\regedit\seting.ico""SubCommands"="three31;three32"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo3command]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshellthree31]
"icon"="C:\regedit\seting.ico""MUIVerb"="三级菜单31"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshellthree31command]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshellthree32]
"icon"="C:\regedit\seting.ico""MUIVerb"="三级菜单32"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshellthree32command]

各种位置的注册表

右击桌面空白位置

注册表位置:HKEY_CLASSES_ROOTDesktopBackgroundShellone,效果如下图所示。

定制右键功能,看这一篇就够了

 

右击文件夹

注册表位置:HKEY_CLASSES_ROOTDirectoryshellone,效果如下图所示。

定制右键功能,看这一篇就够了

 

对应文件后缀的打开方式

这个通过注册表修改比较繁琐,我找到一个软件可以轻松搞定:FileTypesMan。当然可以按照下图所示HKEY_CLASSES_ROOT.test自定义指定后缀文件的菜单:

定制右键功能,看这一篇就够了

 

总结

  1. 关于右键菜单还有很多技巧,我只是把我知道的,我常用的列出来,做个记录。更多技巧可以百度或者谷歌吧。
  2. 希望本文可以帮到大家,反正我已经通过自己的瞎搞,弄了一套舒服的适合我自己的右键菜单,并且制作了reg文件,换个电脑分分钟搞定。
  3. 头条不支持Markdown很烦,有兴趣可以去我的博客看看吧。https://www.cnblogs.com/janbar/p/regedit.html
声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>