Windows 7でカスタムコンテキストメニュー項目にアイコンを追加するにはどうすればよいですか?


9

関連: すべてのファイルのコンテキストメニューにプログラムを追加するにはどうすればよいですか?

カスタムコンテキストメニュー項目を作成しましたが、ショートカットリンクを介しても、すべてのファイルタイプで機能するようです。(カスタムオプションを選択すると、.lnkファイルではなく、ショートカットターゲットで操作が実行されます。)ここで、アイコンを目立たせるために作成します。私のウイルス対策プログラムとNotepad ++はこれを実行できたようですので、それが可能であることを知っています。唯一の問題は、どうやって?

回答:


10

regedit.exeを開き、カスタムメニュー項目用に作成したキーを見つけます。

次に、新しい文字列値を作成して名前を付けIconます。それをダブルクリックして、カスタムアイコンファイルへのパスを入力します。

c:\ folder \ icon.ico

オプションで、私の例のようにWindows shell32.dllファイルを使用できます。 レジストリ

結果:

カスタムコンテキストメニューのアイコン

追加のメモ-この方法はWindows 7(おそらくVista)で機能するように見えますが、Windows XPでテストしたときにアイコンが表示されませんでした。


答えてくれてありがとう、そしてXPでテストした。今日は後でこれを試してみる必要があります。また、私はあなたの方法が私の前の質問への答えと少し異なるように見えることに気づきました。(この質問のリンクを参照してください。)前の回答では、コンテキストメニュー項目のテキストはキー名に格納されています。あなたのものでは、キー内の文字列値に格納されます。違いの実用的な理由はありますか?
Iszi

@Iszi-実際の違いがあるかどうかはわかりません。私はたまたまそのような例を見つけました
Siim K

1
XPで動作しないのはあなたが正しいようです。私のAVとNotepad ++にはまだアイコンがあるので、なぜそうならないのか考えられません。それらはそれらの下でカバーされた機能を持っているようでHKCR\*\shellex\ContextMenuHandlersあり、私はそれらのキーがどのように機能するかを自分で解読することはできません。
Iszi

テスト済みで、Windows 7で動作します。別の質問として、XPを投稿します。
Iszi

2
@ luochen1990これはインデックス番号です-.dllからのアイコンが使用されます。以下に、shell32.dllのアイコンと対応するインデックスの表を示します。help4windows.com
Siim K

4

...そして必要に応じて、プログラム(exeファイル)がすでに使用しているデフォルト/同じアイコンを使用できます。

Icon@Slim Kが彼の答えであなたに指摘した文字列値の内容として、以下のようなものを使用してください:

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

Sublime Text 3は、コンテキストメニューオプションにアイコンを使用しません。そこでIcon、スクリーンショットに表示されているコンテンツに文字列値を追加しました。

1

2


パスに続く番号「0」は何を意味しますか?
luochen1990

@ luochen1990は、Siim Kが承認した回答で述べたように、DLLファイル内のアイコンのインデックス番号です。この場合、0はDLLの最初のアイコンです。この番号付けシステムの詳細については、こちらをご覧ください
クリスチャンシローリ2017年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.