Shiftキーを押しながら右クリックするとこのオプションが表示されることは知っていますが、Shiftキーを押したままにしてこのオプションを表示したくありません。
たとえば、GitをWindowsにインストールする場合、Shiftキーを押しながら右クリックして「ここでGit bashを開く」を表示する必要はありません。これは、右クリックでも表示されるためです。
レジストリを確認すると、HKEY_CLASSES_ROOT\Directory\Shell\git_Shell\command
の下にデフォルト値"C:\Program Files\Git\git-bash.exe" "--cd=%1"
があることがわかります。
HKEY_CLASSES_ROOT\Directory\Shell\Powershell\command
の下のデフォルト値は、powershell.exe -noexit -command Set-Location '%V'
です。
したがって、カスタムの場所HKEY_CLASSES_ROOT\Directory\Shell\PowershellHere\command
の下のデフォルトエントリをpowershell.exe -noexit -command Set-Location '%1'
に設定すると、右クリックメニューにPowerShellオプションが表示されますが、機能しませんでした:(
私に何ができる?
ここに新しいレジストリキーを作成します:
HKEY_CLASSES_ROOT\Directory\Background\Shell\PowershellHere
((Default)
値の場合は、空白のままにするか、&PowershellHereを追加して、右クリックしてから文字pをホットキーとして使用できます。)
ここに別のレジストリキーを作成します:HKEY_CLASSES_ROOT\Directory\Background\Shell\PowershellHere\command
(Default)
文字列に次の値を指定します。
powershell.exe -noexit -command Set-Location -literalPath '%V'
または
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noexit -command Set-Location -literalPath '%V'
または、次の場所で既存のキーをハイジャックできます:HKEY_CLASSES_ROOT\Directory\Background\Shell\Powershell
Extended
およびNoWorkingDirectory
サブキーを削除します(ただし、regedit
管理者権限を持つ。
これは、Windows10の[背景]メニューにPowershellコマンドを追加するために使用するregファイルです。
Windows Registry Editor Version 5.00
;Add_Open_Powershell_to_Context_Menu.reg
;Right-Click Background only
[HKEY_CLASSES_ROOT\Directory\Background\Shell\02MenuPowerShell]
"MUIVerb"="PowerShell Prompts"
"Icon"="powershell.exe"
"ExtendedSubCommandsKey"="Directory\\Background\\ContextMenus\\MenuPowerShell"
[HKEY_CLASSES_ROOT\Directory\Background\Shell\02MenuPowerShell]
"MUIVerb"="PowerShell Prompts"
"Icon"="powershell.exe"
"ExtendedSubCommandsKey"="Directory\\Background\\ContextMenus\\MenuPowerShell"
[HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\open]
"MUIVerb"="PowerShell"
"Icon"="powershell.exe"
[HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\open\command]
@="powershell.exe -noexit -command Set-Location '%V'"
[HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\runas]
"MUIVerb"="PowerShell Elevated"
"Icon"="powershell.exe"
"HasLUAShield"=""
[HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\runas\command]
@="powershell.exe -noexit -command Set-Location '%V'"
このアプローチにより、フォルダとフォルダのバックグラウンドの両方で機能する右クリックのコンテキストメニューが生成され、次のようなメニューが実現します。
reg delete "HKEY_CLASSES_ROOT\Directory\Shell\PowershellConsoleHere" /f
reg delete "HKEY_CLASSES_ROOT\Directory\Background\Shell\PowershellConsoleHere" /f
reg delete "HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\open" /f
reg delete "HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\runas" /f
######## Add “Powershell Console Here” options to context menu
#### Right-Click Folder context menu
reg add "HKEY_CLASSES_ROOT\Directory\Shell\PowershellConsoleHere" /v MUIVerb /t REG_SZ /d "Powershell" /f
reg add "HKEY_CLASSES_ROOT\Directory\Shell\PowershellConsoleHere" /v Icon /t REG_SZ /d "powershell.exe" /f
reg add "HKEY_CLASSES_ROOT\Directory\Shell\PowershellConsoleHere" /v ExtendedSubCommandsKey /t REG_SZ /d "Directory\Background\ContextMenus\MenuPowerShell" /f
#### Right-Click Background context menu
reg add "HKEY_CLASSES_ROOT\Directory\Background\Shell\PowershellConsoleHere" /v MUIVerb /t REG_SZ /d "Powershell" /f
reg add "HKEY_CLASSES_ROOT\Directory\Background\Shell\PowershellConsoleHere" /v Icon /t REG_SZ /d "powershell.exe" /f
reg add "HKEY_CLASSES_ROOT\Directory\Background\Shell\PowershellConsoleHere" /v ExtendedSubCommandsKey /t REG_SZ /d "Directory\Background\ContextMenus\MenuPowerShell" /f
### Create sub-context menu options
## Sub-context menu option: Console
reg add "HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\open" /v MUIVerb /t REG_SZ /d "Console" /f
reg add "HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\open" /v Icon /t REG_SZ /d "powershell.exe" /f
# Set default key value "(Default)"
reg add "HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\open\command" /f /ve /d "powershell.exe -noexit -command Set-Location '%V'"
## Sub-context menu option: Elevated Console
reg add "HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\runas" /v MUIVerb /t REG_SZ /d "Elevated Console" /f
reg add "HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\runas" /v Icon /t REG_SZ /d "powershell.exe" /f
reg add "HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\runas" /v HasLUAShield /t REG_SZ /d "" /f
# Set default key value "(Default)"
reg add "HKEY_CLASSES_ROOT\Directory\Background\ContextMenus\MenuPowerShell\Shell\runas\command" /f /ve /d "powershell.exe -noexit -command Set-Location '%V'"
これは、MSDNブログ記事に基づいています 「ここでコマンドプロンプトを開く」コンテキストメニューエクスペリエンスの強化