Java アプリケーションの Windows エクスプローラーのコンテキスト メニュー (たとえば 7-Zip のように) にサブメニュー項目を追加するにはどうすればよいでしょうか?
2 に答える
私はそれを行う2つの方法を知っています。これは、powerarchiver、winzip などが実行する方法だと思います (これには、選択したファイルに依存するコンテキスト メニュー項目を決定するためのコードの実行が含まれます)。
簡単な機能のための簡単な方法は、レジストリにエントリを追加することです:
HKEY_CLASSES_ROOT\<file type>\shell\<display text>\command
<file type>
このコンテキスト メニューが適用されるファイル (*、.mdb、.doc など) はどこにありますか
と
<display text>
コンテキスト メニューに表示するもの。
次に、コンテキストメニューから起動するアプリケーションへのパスとしてデフォルトの文字列を追加します。%1 を使用して、現在選択されているファイル、つまり私が使用する MS Access を参照できます。
HKEY_CLASSES_ROOT\*\shell\MS Access 2000\command
"C:\Program Files\Microsoft Office\Office\MSACCESS.EXE" "%1"
これにより、選択したファイルのコンテキスト メニュー項目が追加され (したがって *)、MS Access 2000 で起動できるようになります。
もちろん、ハッキングする前に必ずレジストリをバックアップしてください。
プログラムは、インストール中または最初の実行時にこれを行うことができます。
Java プログラムを NSIS などのインストーラーにパッケージ化することもできます。また、NSIS スクリプトを使用してエクスプローラーのコンテキスト メニューを生成することもできます。