2017-05-03 70 views
0

我剛剛學會了如何爲桌面創建上下文菜單,但我真正想要的只是具有一個特定鏈接的上下文菜單。這可能嗎?我還沒有想出如何。我希望在HKEY_CLASSES_ROOT中指定文件而不是擴展名,但我無法使其工作。這是我最近的嘗試。如何將上下文菜單添加到一個特定的文件

[HKEY_CLASSES_ROOT\Applications\My Link.lnk\Shell\Toggle] 
"Position"="Top" 
"Icon"="\"C:\\Program Files (x86)\\My Toggle\\My Toggle.Exe\"" 
@="Toggle" 

[HKEY_LOCAL_MACHINE\Software\Classes\My Link.lnk\shell\Toggle\command] 
@="\"C:\\Program Files (x86)\\My Toggle\\My Toggle.Exe\"" 
+0

我希望它能像。 '[HKEY_CLASSES_ROOT \ DesktopBackground \ Shell \ PowerSribe Switch] 「Position」=「Top」 「Icon」=「\」C:\\ Program Files(x86)\\ My Toggle \\ My Toggle.Exe \「」 @ =「Toggle」 [HKEY_CLASSES_ROOT \ DesktopBackground \ Shell \ PowerSribe Switch \ command] @ =「\」C:\\ Program Files(x86)\\ My Toggle \\ My Toggle.Exe \「」' –

回答

0

如果有人試圖做同樣的事情。我最好的解決方案是創建一個名爲.lnky的新的快捷方式類型擴展,併爲其分配上下文菜單。除非我錯過了某些東西,否則我無法找到一種方法爲單個文件創建上下文菜單,而不是文件擴展名。

此指南幫助了很多: Add menu item to windows context menu only for specific filetype

[HKEY_CLASSES_ROOT\.lnky] 
@="lnkyfile" 

[HKEY_CLASSES_ROOT\lnkyfile] 
@="Shortcut" 
"IsShortcut"="" 
"NeverShowExt"="" 
[HKEY_CLASSES_ROOT\lnkyfile\Shell\My Toggle] 
"Position"="Top" 
"Icon"="\"C:\\Program Files (x86)\\My program\\My program.Exe\"" 
@="My Action" 
[HKEY_CLASSES_ROOT\lnkyfile\Shell\My Toggle\command] 
@="\"C:\\Program Files (x86)\\My program\\My program.Exe\"" 

這樣做的結果是,當我在我的lnky文件上右鍵碰杯它旁邊,我的程序圖標我的行爲在上下文菜單的頂部。當我點擊我的動作時,我的程序會運行。

+0

After在第二臺個人電腦上進行測試,我意識到爲了使文件仍然像鏈接文件一樣行事,我必須再做一步。導出HCR \ lnk文件。在文本編輯器中打開它[將所有]「lnkfile」替換爲「lnkyfile」,然後將reg文件合併回註冊表中。最終結果看起來像。 –

+0

'[HKEY_CLASSES_ROOT \ lnkyfile] @ = 「快捷方式」 「IsShortcut」= 「」 「NeverShowExt」= 「」 「EditFlags」= DWORD:00000001 「FriendlyTypeName」= 「@ SHELL32.DLL,-4153」 [HKEY_CLASSES_ROOT \ lnkyfile \ CLSID] @ = 「{00021401-0000-0000-C000-000000000046}」 [HKEY_CLASSES_ROOT \ lnkyfile \殼牌] [HKEY_CLASSES_ROOT \ lnkyfile \殼牌\ PowerSribe切換] 「位置」= 「Top」 「Icon」=「\」C:\\ Program Files(x86)\\ My Program \\ My Program.Exe \「」 @ =「My Action」 [HKEY_CLASSES_ROOT \ lnkyfile \ Shell \ PowerSribe Toggle \命令] @ =「\」C:\\ Program Files(x86)\\ My Program \\ My Program。EXE \ 「」 [HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx的]' –

+0

''[HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx的\ ContextMenuHandlers] [HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx的\ ContextMenuHandlers \兼容性] @ =「{1d27f844-3a1f-4410-85ac -14651078412d} 「 [HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx的\ ContextMenuHandlers \ NvAppShExt] @ = 」{A929C4CE-FD36-4270-B4F5-34ECAC5BD63C}「 [HKEY_CLASSES_ROOT \ lnkyfile \ ShellEx的\ ContextMenuHandlers \ OpenContainingFolderMenu] @ =」 {37ea3a21-7493-4208-a011-7f9ea79ce9f5} 「'' –

相關問題