Windows 10 Creators Updateで[Shift]+右クリックメニュー(コンテキストメニュー)から[コマンドウィンドウをここで開く]がなくなり、[PowerShellウィンドウをここに開く]が表示されるようになった。そのため、エクスプローラで簡単にコマンドプロンプトが開けなくなってしまった。そこで、[コマンドウィンドウをここで開く]を復活させる方法を紹介する。
対象OS:Windows 10 Creators Update以降
[ダウンロード]フォルダなどでコマンドプロンプトを開きたい場合、これまでは[Shift]+右クリックで表示されるコンテキストメニューで[コマンドウィンドウをここで開く]を選択すればよかった。開いたフォルダがカレントディレクトリの状態で、コマンドプロンプトが開くので、階層が深いフォルダ内をコマンドプロンプトで操作したいような場合には便利な機能であった。
ところが、Windows 10 Creators Updateにアップグレードすると、コンテキストメニューには[コマンドウィンドウをここで開く]の代わりに[PowerShellウィンドウをここに開く]が表示されるようになってしまった。
これは、[スタートメニュー]ボタンを右クリックして表示されるクイックアクセスメニューと同じ仕様変更だ。ただクイックアクセスメニューの場合、タスクバーを右クリックして[タスクバーの設定]を選択、表示された[タスクバーの設定]画面で「PowerShell」を「コマンドプロンプト」に変更できた(クイックアクセスメニューで「コマンドプロンプト」に変更する方法は、Tech TIPS「Windows 10のクイックアクセスメニューで、PowerShellの代わりにコマンドプロンプトを起動する」参照のこと)。
しかしコンテキストメニューに対しては、残念ながら設定画面で変更できる項目が見当たらない。コンテキストメニューに[コマンドウィンドウをここで開く]を復活させるには、レジストリを操作する必要がある。以下、レジストリを操作して、コンテキストメニューに[コマンドウィンドウをここで開く]を復活させる方法を紹介する。
レジストリに不正な値を書き込んでしまうと、システムに重大な障害を及ぼし、最悪の場合、システムの再インストールを余儀なくされることもあります。レジストリエディタの操作は慎重に行うとともに、あくまで御自分のリスクで設定を行ってください。何らかの障害が発生した場合でも、本Windows Server Insider編集部では責任を負いかねます。ご了承ください。
まずはレジストリエディタを起動する。それにはクイックアクセスメニューの[ファイル名を指定して実行]をクリックするか、あるいは[Windows]+[R]キーを押して「ファイル名を指定して実行」ダイアログを開き、「regedit」と入力して実行する。ユーザーアクセス制御(UAC)のダイアログが表示されたら、必要に応じて管理者アカウントで認証しつつ起動を許可すること。
[コマンドウィンドウをここで開く]を復活させるためには、以下のレジストリキーを編集する必要があるのだが、それにはレジストリキーの所有者を変更するなどの操作が必要になる。
項目 | 内容 |
---|---|
キー(フォルダで[Shift]+右クリック) | HKEY_CLASSES_ROOTの\Directory\Background\shell\cmd |
キー(ドライブで[Shift]+右クリック) | HKEY_CLASSES_ROOTの\Drive\shell\cmd |
値の名前(変更前) | HideBasedOnVelocityId |
値の型(変更前) | REG_DWORD |
値のデータ(変更前) | 0x639bc8(16進数) |
値の名前(変更後) | ShowBasedOnVelocityId |
値の型(変更後) | REG_DWORD |
値のデータ(変更後) | 0x639bc8(16進数) |
[コマンドウィンドウをここで開く]を復活させるためのレジストリキー |
そこでHKEY_CLASSES_ROOT(HKCR)を操作する代わりに、HKEY_CURRENT_USER(HKCU)の\Software\Classes\を書き換えてレジストリを上書きすることにする(HKCRのレジストリキーは、HKCUの\Software\Classes\の同じキーが優先され、値が上書きされる仕組みとなっている)。これならば、レジストリキーの所有者の変更も必要ない。
レジストリエディタが起動したら、以下のレジストリキーを開き、値の名前「HideBasedOnVelocityId」に0x0を、「ShowBasedOnVelocityId」に0x639bc8(16進数)をそれぞれ設定する。デフォルトではキーが存在しないので、新たに作成すること。
項目 | 内容 |
---|---|
キー(フォルダで[Shift]+右クリック) | HKEY_CURRENT_USERの\Software\Classes\Directory\Background\shell\cmd |
キー(ドライブで[Shift]+右クリック) | HKEY_CURRENT_USERの\Software\Classes\Drive\shell\cmd |
値の名前 | HideBasedOnVelocityId |
値の型 | REG_DWORD |
値のデータ | 0x0(16進数) |
値の名前 | ShowBasedOnVelocityId |
値の型 | REG_DWORD |
値のデータ | 0x639bc8(16進数) |
[コマンドウィンドウをここで開く]を復活させるために操作が必要なレジストリキー 値の名前「ShowBasedOnVelocityId」にデータを設定しただけでは[コマンドウィンドウをここで開く]はメニューに表示されない。値の名前「HideBasedOnVelocityId」に「0x0」をセットし、非表示にする機能を無効化する必要がある。 |
変更するキーが2カ所あるいのは、エクスプローラのフォルダとドライブのそれぞれで設定する必要があるからだ。例えば上記のフォルダ向けの設定をしても、ドライブを選んで右クリックしたときにコマンドプロンプトのメニューは表示されない。
この操作をHKEY_CURRENT_USERの\Software\Classes\Drive\shell\cmdキーに対しても行う。これで、コンテキストメニューに[コマンドウィンドウをここで開く]が表示されるようになる([PowerShellウィンドウをここに開く]も表示される)。
[PowerShellウィンドウをここに開く]を非表示にするには、同様の手順で、cmdキーと同じ階層にあるPowershellキーに対して、値の名前「ShowBasedOnVelocityId」に0を、また「HideBasedOnVelocityId」に0x639bc8(16進数)をそれぞれ設定すればよい。同様にデフォルトではキーが存在しないので、新たに作成すること。
項目 | 内容 |
---|---|
キー(フォルダで[Shift]+右クリック) | HKEY_CURRENT_USERの\Software\Classes\Directory\Background\shell\Powershell |
キー(ドライブで[Shift]+右クリック) | HKEY_CURRENT_USERの\Software\Classes\Drive\shell\Powershell |
値の名前 | HideBasedOnVelocityId |
値の型 | REG_DWORD |
値のデータ | 0x639bc8(16進数) |
値の名前 | ShowBasedOnVelocityId |
値の型 | REG_DWORD |
値のデータ | 0x0(16進数) |
[PowerShellウィンドウをここで開く]を表示させないようにするのに必要なレジストリキー |
■更新履歴
【2018/03/19】「[PowerShellウィンドウをここで開く]を表示させないようにするのに必要なレジストリキー」の「キー(ドライブで[Shift]+右クリック)」が「\Software\Classes\Directory\shell\Powershell」としていましたが、「\Software\Classes\Drive\shell\Powershell」の誤りでした。
【2017/09/15】初版公開。
Copyright© Digital Advantage Corp. All Rights Reserved.