エクスプローラのコンテキストメニュー登録したい
やりたいこと
- エクスプローラのコンテキストメニューで [XX で開く] といった設定を自分で追加したい
結論
| # | 出来ること | やること |
|---|---|---|
| 方法1 | 右クリックメニューの「送る」に出す | shell:sendto フォルダにショートカット保存 |
| 方法2 | 右クリックメニュー直下に出す | レジストリ登録 |
→ レジストリいじるぐらいなら、「送る」で済ませるのが手っ取り早い
方法1. shell:sendto を使う
できること
- 右クリックメニューの「送る」に追加することで、ファイル/フォルダを指定のプログラムの引数に渡せるようになる
設定方法
- Windows ボタン右クリック > ファイル名を指定して実行 >
shell:sendto - 出てきたフォルダに、呼びたいプログラムのショートカットを配置する
おまけ
マウス操作が面倒なら・・
🤖 ショートカットのファイル 名を先頭アルファベット(たとえば X とする)にしておけば、
右クリック → N → X でサクッと操作できますよ。
👴 あれ、前は N でなく S なので左手で完結して便利だったような・・?
🤖 Win 11 では S は PowerShell に取られたね。力関係的に、仕方ない
方法2. レジストリで右クリックメニューに追加する
👴 調べたから載せておくけど、SendTo で済ませることにしたから試してない。 やるときは自己責任でどうぞ > 未来の自分
ファイルを対象とする場合
右クリックで「ここでMyScriptを実行」を表示
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\*\shell\MyScript]
@="ここでMyScriptを実行"
[HKEY_CLASSES_ROOT\*\shell\MyScript\command]
@="\"C:\\Path\\To\\MyScript.bat\" \"%1\""
*は「すべてのファイル」の意%1は選択中のファイルパスに展開される.bat,.ps1,.exeなど対応可能
フォルダを対象とする場合
フォルダの右クリックに追加
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\MyScript]
@="このフォルダでMyScriptを実行"
[HKEY_CLASSES_ROOT\Directory\shell\MyScript\command]
@="\"C:\\Path\\To\\MyScript.bat\" \"%1\""
おまけ: バリエーション
| 対象 | レジストリパス |
|---|---|
| 任意のファイル | HKEY_CLASSES_ROOT\*\shell\ |
特定の拡張子(例: .txt) | HKEY_CLASSES_ROOT\txtfile\shell\ |
| フォルダ | HKEY_CLASSES_ROOT\Directory\shell\ |
| ドライブ | HKEY_CLASSES_ROOT\Drive\shell\ |
| 空白部分(フォルダ内余白) | HKEY_CLASSES_ROOT\Directory\Background\shell\ |