如何在Windows 7中向自定义上下文菜单项添加图标?


9

相关: 如何将程序添加到所有文件的上下文菜单?

我创建了自定义上下文菜单项,它似乎适用于所有文件类型-即使通过快捷方式链接也是如此。(选择我的自定义选项将对快捷方式目标而不是.lnk文件执行操作。)现在,我想创建一个图标使其突出。我的防病毒程序和Notepad ++似乎能够做到这一点,所以我知道这是可能的。唯一的问题是,如何?

Answers:


10

打开regedit.exe并找到您为自定义菜单项创建的键。

现在在其中创建一个新的String值并将其命名Icon。双击它并输入您的自定义图标文件的路径:

c:\ folder \ icon.ico

您可以选择使用Windows shell32.dll文件,例如在我的示例中: 登记处

结果:

自定义上下文菜单中的图标

只是一个额外的注意事项-看起来这种方法在Windows 7(可能是Vista)上也可以使用,但是当我在Windows XP上进行测试时,该图标没有出现。


感谢您的回答,并在XP上进行测试。我今天晚些时候要试一下。另外,我注意到您的方法似乎与我上一个问题的答案有所不同。(请参阅此问题中的链接。)在上一个答案中,上下文菜单项的文本存储在键名称中。在您的文件中,它存储在密钥内的字符串值中。造成差异的任何实际原因?
Iszi 2012年

@Iszi-不知道是否有真正的区别。我碰巧找到了这样一个例子
Siim K

1
看来您在XP上无法正常使用是正确的。我想不到为什么不会,因为我的AV和Notepad ++仍然带有图标。尽管它们似乎涵盖了它们的功能,HKCR\*\shellex\ContextMenuHandlers但我无法自行判断这些键的工作方式。
Iszi 2012年

经过测试并可以在Windows 7中运行。我将继续发布XP作为另一个问题。
Iszi 2012年

2
@ luochen1990它是索引号-使用.dll中的图标。这是带有图标和相应索引的shell32.dll表:help4windows.com/windows_7_shell32_dll.shtml
Siim K

4

...然后,如果需要,可以使用程序(exe文件)已在使用的默认/相同图标。

只需使用以下内容作为Icon@Slim K在您的答案中指向您的字符串值的内容:

"C:\Path\to\YourProgram.exe",0

Sublime Text 3的上下文菜单选项不使用图标。因此,我添加了一个Icon字符串值,以及您在屏幕快照中看到的内容。

1个

2


路径后面的数字“ 0”是什么意思?
luochen1990

正如Siim K接受的答案中提到的@ luochen1990,它是DLL文件中图标的索引号。在这种情况下,数字零是DLL中的第一个图标。您可以在此处
Christian Sirolli
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.