前言
- 有時(shí)候有些經(jīng)常用到的功能希望可以自定義加入右鍵菜單中,那么本文可以帶你了解通過修改注冊(cè)表方式定制右鍵菜單。
- 特別注意修改注冊(cè)表屬于高危操作,不認(rèn)識(shí)、不知道的注冊(cè)表不要輕易刪除或修改。在編輯注冊(cè)表之前記得備份注冊(cè)表。
- 右鍵菜單分為很多種,后面我會(huì)介紹幾個(gè)常用的情況,大致情況有下面幾種:
- 桌面右擊空白處彈出菜單
- 文件夾右擊空白處彈出菜單
- 右擊單個(gè)文件彈出菜單
- 右擊多個(gè)文件彈出菜單
- 右擊單個(gè)文件夾彈出菜單
- 右擊多個(gè)文件夾彈出菜單
- 右擊文件和文件夾組合時(shí)彈出菜單
- 注冊(cè)表對(duì)大小寫不敏感,網(wǎng)上那些文檔里面項(xiàng)的名字大小寫各不相同,但都是生效的。
注冊(cè)表參數(shù)
1. 參數(shù)和解釋

注冊(cè)表參數(shù)詳解
2. 驗(yàn)證參數(shù)
為了驗(yàn)證上述參數(shù)我寫了一個(gè)go的腳本來打印通過修改注冊(cè)表時(shí)右鍵參數(shù)具體值。代碼如下:
package main
import ( "fmt"
"os"
)func main() {
for _, v := range os.Args {
fmt.Printf("[%s]n", v)
} fmt.Scanln()}
為方便copy,我把下面注冊(cè)表的值放出來:
"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中添加上面那個(gè)命令行,測(cè)試右鍵單個(gè)文件結(jié)果如下:

驗(yàn)證注冊(cè)表參數(shù)
- 右擊文件為快捷方式時(shí)參數(shù)列表才有數(shù)據(jù),已經(jīng)測(cè)過不支持%10,右擊文件時(shí)不會(huì)出現(xiàn)參數(shù)列表值。
- 右擊文件為快捷方式時(shí)%W會(huì)有不一樣的結(jié)果,當(dāng)起始位置為空結(jié)果為快捷方式所在目錄,當(dāng)起始位置有填目錄則結(jié)果就是填寫的值。看下圖:

參數(shù)列表和%W的作用
3.注冊(cè)表參數(shù)總結(jié)
- 知道每個(gè)參數(shù)的含義,那么在運(yùn)行自己寫的程序時(shí)就知道注冊(cè)表里面的參數(shù)如何填寫,不會(huì)有問題。
- 關(guān)于第二到第九的參數(shù)以及%W的特殊之處,我也是試出來的,因?yàn)榭磩e人的博文寫的不清楚。所以最好多查查資料搞清楚具體含義再使用會(huì)避免很多麻煩。
右擊文件菜單配置
1. 常用配置如下

注冊(cè)表值的解釋
2. 結(jié)果截圖如下所示,當(dāng)配置Single時(shí)多選文件右鍵會(huì)隱藏配置的菜單:

配置當(dāng)單選時(shí)才會(huì)出現(xiàn)的右鍵菜單
多級(jí)菜單
先添加一級(jí)菜單
在HKEY_CLASSES_ROOT*shellone下,增加一個(gè)子項(xiàng)SubCommands=two1;two2;two3,示例這三個(gè)值會(huì)在下一步作為注冊(cè)表名。

添加一級(jí)菜單
再添加二級(jí)菜單
在HKEY_LOCAL_macHINESOFTWAREMicrosoftwindowsCurrentVersionExplorerCommandStoreshell下面添加如下幾個(gè)項(xiàng),還可以添加三級(jí)菜單。

添加二級(jí)菜單
還可以添加三級(jí)菜單
添加三級(jí)菜單也是在HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshell下面,如果需要可以添加更多級(jí)菜單。

多級(jí)菜單
看下效果圖
看下圖,需要執(zhí)行命令,則在圖中對(duì)應(yīng)的command中添加命令即可。

多級(jí)菜單效果圖
通過注冊(cè)表文件創(chuàng)建
可以先通過注冊(cè)表工具先創(chuàng)建好可用的注冊(cè)表配置,再右鍵一個(gè)個(gè)導(dǎo)出,然后用記事本把這些注冊(cè)表合并在一起即可。

導(dǎo)出注冊(cè)表
下面是導(dǎo)出的配置組合,保存成.reg文件,雙擊執(zhí)行即可完成注冊(cè)表配置。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT*shellone]
"icon"="C:\regedit\seting.ico""SubCommands"="two1;two2;two3""MuiVerb"="一級(jí)菜單"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo1]
"MUIVerb"="二級(jí)菜單1""icon"="C:\regedit\seting.ico"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo1command]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo2]
"MUIVerb"="二級(jí)菜單2""icon"="C:\regedit\seting.ico"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo2command]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo3]
"MUIVerb"="二級(jí)菜單3""icon"="C:\regedit\seting.ico""SubCommands"="three31;three32"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshelltwo3command]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshellthree31]
"icon"="C:\regedit\seting.ico""MUIVerb"="三級(jí)菜單31"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshellthree31command]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshellthree32]
"icon"="C:\regedit\seting.ico""MUIVerb"="三級(jí)菜單32"[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplorerCommandStoreshellthree32command]
各種位置的注冊(cè)表
右擊桌面空白位置
注冊(cè)表位置:HKEY_CLASSES_ROOTDesktopBackgroundShellone,效果如下圖所示。

右擊文件夾
注冊(cè)表位置:HKEY_CLASSES_ROOTDirectoryshellone,效果如下圖所示。

對(duì)應(yīng)文件后綴的打開方式
這個(gè)通過注冊(cè)表修改比較繁瑣,我找到一個(gè)軟件可以輕松搞定:FileTypesMan。當(dāng)然可以按照下圖所示HKEY_CLASSES_ROOT.test自定義指定后綴文件的菜單:

總結(jié)
- 關(guān)于右鍵菜單還有很多技巧,我只是把我知道的,我常用的列出來,做個(gè)記錄。更多技巧可以百度或者谷歌吧。
- 希望本文可以幫到大家,反正我已經(jīng)通過自己的瞎搞,弄了一套舒服的適合我自己的右鍵菜單,并且制作了reg文件,換個(gè)電腦分分鐘搞定。
- 頭條不支持Markdown很煩,有興趣可以去我的博客看看吧。https://www.cnblogs.com/janbar/p/regedit.html