英字レイアウトのキーボードをWindosにおいて使用する設定

PCを買い替えたので、以前使っていた英字レイアウトのキーボードをWindows 8.1 Proでも使用できるようにするために設定を行った。

環境

作業概要

キーボード関連のレジストリを書き換える*1

作業内容

Powershellを使って、該当するレジストリの値を変更する*2

#実際に使用するときは、以下に注意する。
#①-whatIf オプション(実際にコマンドは実行せず、実行した場合の結果を表示する)を外すこと。
#②Powershellは管理者として実行する。

#キーボードレイアウトを持つレイヤーファイル(DLLファイル)の読み込み先を指定する。
Set-ItemProperty "Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters" -name "LayerDriver JPN" -value "kbd101.dll" -whatIf

#キーボードの種類を指定する。「2」の場合は拡張101キーボード、「4」の場合は拡張102キーボード、日本語キーボードでは主に「7」が使用される。
Set-ItemProperty "Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters" -name "OverrideKeyboardIdentifier" -value "PCAT_101KEY" -whatIf

#OEM固有のキーボードサブタイプ 各OEMメーカーが設けた独自キーをサポートするために用意されているため、英語キーボード使用時は「0」、日本語キーボード使用時は「2」にしておく
Set-ItemProperty "Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters" -name "OverrideKeyboardSubtype" -value "0" -whatIf

#結果を確認する。
Get-ItemProperty "Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters" 

参考

*1:PS/2のキーボードの場合はドライバの更新で対応できる場合もあるようだ

*2:シンタックスハイライトにPowershellは対応していないらしいので、そのうちSyntaxHighlighterを入れよう。