単一のファイル名をコンテキストメニューシェルコマンドに渡すのは簡単です。
[HKEY_CLASSES_ROOT\*\shell\MyProgram\Command]
@="program.exe %1"
しかし、複数のファイルを選択すると、そのような選択されたファイルごとprogram.exe
にが呼び出されます。
代わりに、1回だけ呼び出しprogram.exe
て、現在選択されているすべてのファイル名を渡します。
これを行う方法?
単一のファイル名をコンテキストメニューシェルコマンドに渡すのは簡単です。
[HKEY_CLASSES_ROOT\*\shell\MyProgram\Command]
@="program.exe %1"
しかし、複数のファイルを選択すると、そのような選択されたファイルごとprogram.exe
にが呼び出されます。
代わりに、1回だけ呼び出しprogram.exe
て、現在選択されているすべてのファイル名を渡します。
これを行う方法?
これにはSendToを使用できます。複数のファイルをサポートします。
このウェブサイトがオフラインになった場合:
shell:sendto
エクスプローラーのアドレスバーで開くWindows + R
か、貼り付けます。次の場所にリダイレクトされます。
C:\Users\<yourusername>\AppData\Roaming\Microsoft\Windows\SendTo
このフォルダにプログラムへのショートカットを作成すると、エクスプローラの右クリックメニューに表示されます。Send to
複数のファイルを単一のインスタンスに渡すことは実際には不可能であり、何らかの形式のIPC(プロセス間通信)に依存する必要があるため、この投稿を参照することをお勧めします。