Windows 8.1 PreviewやWindows Server 2012 R2 Previewを触っていた人はPowerShellがWin + xのメニューでデフォルトになっているのを見て喜んだことでしょう。
しかし、 Windows 8.1 RTMやWindows Server 2012 RTMを見ると、Windows 8 / Windows Server 2012同様にコマンドプロンプトになっているではありませんか。

今回は、これをWindows PowerShellに変更することを考えてみましょう。
GUI で設定
自分のPCだけならGUIで十分ですね。
1.タスクバーを右クリック > プロパティ

2.ナビゲーション > 左下隅を右クリックするか、Windows キー + X キーを押したときに表示されるメニューで、コマンドプロンプトを Windows PowerShell に置き換える(C)が無効になっています。

3.左下隅を右クリックするか、Windows キー + X キーを押したときに表示されるメニューで、コマンドプロンプトを Windows PowerShell に置き換える(C)を有効にして適用します。

4.変更が反映されています。

レジストリから設定
PowerShellを使えば、リモートPCのレジストリ変更も簡単です。
PowerShellでのレジストリキー変更スクリプトを紹介しておきましょう。
キーの確認
レジストリキーを確認します。 H_KEY_CURRENT_USERの以下のキーが該当します。
$PowerShellPath = "registry::HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" $PowerShellKey = "DontUsePowerShellOnWinX" (Get-ItemProperty -Path $PowerShellPath).$PowerShellKey
デフォルト = コマンドプロンプトが有効では、 1になっています。
この値を0にすることで、 Windows PowerShellがWin + Xで有効になります。
キーの変更
以下のスクリプトで変更が可能です。 変更はExplorer.exeの再起動で読み込まれるため組込んでいます。
- 中にはLogOff/LogOnがいると書かれている記事がありますがExplorerの再起動で足りる場合が多いでしょう
Win + XでWindows PowerShellを有効にする
$PowerShellPath = "registry::HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" $PowerShellKey = "DontUsePowerShellOnWinX" # Check Win + X Shell Status (Get-ItemProperty -Path $PowerShellPath).$PowerShellKey # Enable PowerShell on Win + X Set-ItemProperty -Path $PowerShellPath -Name $PowerShellKey -Value 0 -PassThru # Restart Explorer.exe then change take effect Get-Process | where Name -eq Explorer |Stop-Process -Force -PassThru | %{Start-Process C:\Windows\explorer.exe}
Win + XでWindows PowerShellを無効にする
$PowerShellPath = "registry::HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" $PowerShellKey = "DontUsePowerShellOnWinX" # Check Win + X Shell Status (Get-ItemProperty -Path $PowerShellPath).$PowerShellKey # Disable PowerShell on Win + X Set-ItemProperty -Path $PowerShellPath -Name $PowerShellKey -Value 1 -PassThru # Restart Explorer.exe then change take effect Get-Process | where Name -eq Explorer |Stop-Process -Force -PassThru | %{Start-Process C:\Windows\explorer.exe}
まとめ
どうしてこうなったMicrosoft