パスとしてコピーのメニューは [Shift] + 右クリックで表示できます。
しかし、この操作では片方の手をフトンから出さなければならず、とても寒いです。
そのまま前面に表示するのは少し難しいので、本来のメニューとは別に Shell コマンドで実装することにより、ダブルクォーテーションの付かないパスをコピーできます。
【2023年】Windows 10 のパスのコピーを[Shift]なしで表示する方法
-
レジストリのキーを作成します。
HKCU\Software\Classes\AllFilesystemObjects\shell\CopyPath\command
-
command キーの既定のデータを入力します。
cmd.exe /c @echo %1|clip
スペースを含んだパスもコピーできます。
"%1" にすると""で囲んだパスがコピーされます。
HKCU を HKLM にするとすべてのユーザーが対象になります。
元に戻すには追加したキーや値を削除します。
一瞬コマンドウィンドウが開くのが惜しいですが、無理な体勢を強いられ、コーヒーをこぼし、静まりかえった冬の真夜中に絶叫するよりましです。
これだけでは味気ないので、項目名とアイコンをお好みで追加します。
-
CopyPath キーを選択。
-
Icon (文字列値)を作成して、データを shell32.dll,-243 にします。
-
MUIVerb (文字列値)を作成して、データを @shell32.dll,-30328 にします。
[HKEY_CURRENT_USER\Software\Classes\AllFilesystemObjects\shell\CopyPath]
"Icon"="shell32.dll,-243"
"MUIVerb"="@shell32.dll,-30328"
[HKEY_CURRENT_USER\Software\Classes\AllFilesystemObjects\shell\CopyPath\command]
@="cmd.exe /c @echo %1|clip"
Shift を押した時に同じ項目が 2 つ表示され、ショートカットキーも同じになっています。A を押すごとに、選択が切り替わり Enter で決定できます。
アイコンが付いているのがパスのみコピーで、本来のメニューは""で囲んだパスになります。
"MUIVerb"="パスとしてコピー(&F)" … Fは空いているショートカットキー
"MUIVerb"="パスとしてコピー" … ショートカットキーなし
などにするとかぶらなくなります。
実用しているのは、もう少し工夫して表示位置が揃うようにしています。
"Position"="bottom"
[HKEY_CURRENT_USER\Software\Classes\CLSID\{F3D06E7C-1E45-4A26-847E-F9FCDEE59BE0}]
"flags"=dword:00000000
このコマンドは DLL ファイルの中に入っているため、パッチをあてずにそのまま前面に持ってくるのは不可能なため、新しく追加する形で実装しました。