前言
- 有時候有些經常用到的功能希望可以自定義加入右鍵菜單中,那么本文可以帶你了解通過修改注冊表方式定制右鍵菜單。
- 特別注意修改注冊表屬于高危操作,不認識、不知道的注冊表不要輕易刪除或修改。在編輯注冊表之前記得備份注冊表。
- 右鍵菜單分為很多種,后面我會介紹幾個常用的情況,大致情況有下面幾種:
- 桌面右擊空白處彈出菜單
- 文件夾右擊空白處彈出菜單
- 右擊單個文件彈出菜單
- 右擊多個文件彈出菜單
- 右擊單個文件夾彈出菜單
- 右擊多個文件夾彈出菜單
- 右擊文件和文件夾組合時彈出菜單
- 注冊表對大小寫不敏感,網上那些文檔里面項的名字大小寫各不相同,但都是生效的。
注冊表參數
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中添加上面那個命令行,測試右鍵單個文件結果如下:
驗證注冊表參數
- 右擊文件為快捷方式時參數列表才有數據,已經測過不支持%10,右擊文件時不會出現參數列表值。
- 右擊文件為快捷方式時%W會有不一樣的結果,當起始位置為空結果為快捷方式所在目錄,當起始位置有填目錄則結果就是填寫的值??聪聢D:
參數列表和%W的作用
3.注冊表參數總結
- 知道每個參數的含義,那么在運行自己寫的程序時就知道注冊表里面的參數如何填寫,不會有問題。
- 關于第二到第九的參數以及%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自定義指定后綴文件的菜單:
總結
- 關于右鍵菜單還有很多技巧,我只是把我知道的,我常用的列出來,做個記錄。更多技巧可以百度或者谷歌吧。
- 希望本文可以幫到大家,反正我已經通過自己的瞎搞,弄了一套舒服的適合我自己的右鍵菜單,并且制作了reg文件,換個電腦分分鐘搞定。
- 頭條不支持Markdown很煩,有興趣可以去我的博客看看吧。https://www.cnblogs.com/janbar/p/regedit.html