Windows Vista を実行しているコンピュータに USB キーボードを接続したときに、Windows Vista で適切なキーボード レイアウトが使用されないことがあります。
たとえば、コンピュータに 106/109 日本語 USB キーボードまたはテンキーの USB キーボードを接続したときに、Windows Vista でそのデバイスのキーボード レイアウトが 101/102 英語キーボード レイアウトであるかのように扱われることがあります。
この問題は、以下のいずれかの条件に該当する場合に発生することがあります。
-
USB キーボードに "101/102 英語 USB キーボード" として定義された "プラグ アンド プレイ ID" を持つチップが搭載されている。
一部の 106/109 日本語 USB キーボードには、101/102 英語キーボードのチップが搭載されており、"プラグ アンド プレイ ID" も同じものが使用されています。この種類の 106/109 日本語 USB キーボードをコンピュータに接続すると、Windows Vista では英語版のデバイスとして識別されます。そのため、Windows Vista ではシステムのキーボード レイアウトが 101/102 英語に変更されます。
-
USB キーボードの "プラグ アンド プレイ ID" が Keyboard.inf ファイルで定義されていない。
USB キーボードの "プラグ アンド プレイ ID" が Keyboard.inf ファイルで定義されていないと、Windows Vista ではキーボードのモデルを特定できません。この種類のキーボードを接続すると、Windows Vista のインストール時に構成されたデフォルトのキーボード レイアウト設定が Windows Vista で使用されます。たとえば、106/109 日本語キーボードやテンキーの USB キーボードを接続した場合にこの問題が発生することがあります。
-
Windows Vista でキーボードが正しく識別されない。
特定の状況では、使用する実際のキーボード レイアウトが Windows Vista で定義されているキーボード レイアウトと一致しなくなります。この問題が発生する可能性が高いのは、汎用 USB キーボードを使用している場合です。この問題は、汎用 USB キーボードをユーザーが選択したキーボード レイアウトにマッピングするために Windows Vista で使用されている方法が原因で発生します。
警告 : レジストリ エディタまたは別の方法を使用してレジストリを誤って変更すると、深刻な問題が発生することがあります。最悪の場合、オペレーティング システムの再インストールが必要になることがあります。マイクロソフトは、レジストリの変更により発生した問題に関しては、一切責任を負わないものとします。レジストリの変更は、自己の責任において行ってください。
この問題を解決するには、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters レジストリ サブキーを構成し、次の表に示すレジストリ エントリを設定します。
元に戻す全体を表示する
|
値の名前
|
値の種類
|
値のデータ
|
|---|
|
LayerDriver JPN
|
REG_SZ
|
kbd106.dll
|
|
OverrideKeyboardIdentifier
|
REG_SZ
|
PCAT_106KEY
|
|
OverrideKeyboardSubtype
|
DWORD
|
2
|
|
OverrideKeyboardType
|
DWORD
|
7
|
注 : 英語 USB キーボードと韓国語 USB キーボードに対応するレジストリ エントリの詳細については、「詳細」を参照してください。
これらのレジストリ エントリを構成するには、次の手順を実行します。
-
[スタート] ボタンをクリックし、[検索の開始] ボックスに regedit と入力し、[プログラム] の下の [regedit] をクリックします。
管理者のパスワードを要求するダイアログ ボックスが表示された場合はパスワードを入力して [OK] をクリックし、確認を要求するダイアログ ボックスが表示された場合は [続行] をクリックします。
-
次のレジストリ サブキーを見つけてクリックします。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
-
[LayerDriver JPN] を右クリックし、[修正] をクリックします。
注 : LayerDriver JPN レジストリ エントリが存在しない場合は作成します。作成するには、詳細ウィンドウの空白領域を右クリックして [新規] をポイントし、[文字列値] をクリックします。次に LayerDriver JPN と入力して新しい文字列値の名前を設定します。
-
[値のデータ] ボックスで、既存の値を削除して kbd106.dll と入力し、[OK] をクリックします。
-
[OverrideKeyboardIdentifier] を右クリックし、[修正] をクリックします。
注 : OverrideKeyboardIdentifier レジストリ エントリが存在しない場合は作成します。作成するには、詳細ウィンドウの空白領域を右クリックして [新規] をポイントし、[文字列値] をクリックします。次に OverrideKeyboardIdentifier と入力して新しい文字列値の名前を設定します。
-
[値のデータ] ボックスで、既存の値を削除して PCAT_106KEY と入力し、[OK] をクリックします。
-
[OverrideKeyboardSubtype] を右クリックし、[修正] をクリックします。
注 : OverrideKeyboardSubtype レジストリ エントリが存在しない場合は作成します。作成するには、詳細ウィンドウの空白領域を右クリックして [新規] をポイントし、[DWORD (32 ビット) 値] をクリックします。次に OverrideKeyboardSubtype と入力して新しい DWORD 値の名前を設定します。
-
[値のデータ] ボックスで、既存の値を削除して 2 と入力し、[OK] をクリックします。
-
[OverrideKeyboardType] を右クリックし、[修正] をクリックします。
注 : OverrideKeyboardType レジストリ エントリが存在しない場合は作成します。作成するには、詳細ウィンドウの空白領域を右クリックして [新規] をポイントし、[DWORD (32 ビット) 値] をクリックします。次に OverrideKeyboardType と入力して新しい DWORD 値の名前を設定します。
-
[値のデータ] ボックスで、既存の値を削除して 7 と入力し、[OK] をクリックします。
-
レジストリ エディタを終了し、コンピュータを再起動します。
注 : コンピュータを再起動した後もキーボードが正しく動作しない場合は、これらのレジストリ設定を変更する際の入力に誤りがあった可能性があります。この問題を回避するには、スクリーン キーボードを使用してコンピュータにログオンし、レジストリ設定を確認してください。
英語キーボードと韓国語キーボードのレジストリ エントリ
101/102 英語 (US) キーボード
101/102 英語 (US) USB キーボードの HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters レジストリ エントリを次の表に示します。
元に戻す全体を表示する
|
値の名前
|
値の種類
|
値のデータ
|
|---|
|
LayerDriver JPN
|
REG_SZ
|
kbd101.dll
|
|
OverrideKeyboardIdentifier
|
REG_SZ
|
PCAT_101KEY
|
|
OverrideKeyboardSubtype
|
DWORD
|
0
|
|
OverrideKeyboardType
|
DWORD
|
7
|
101 韓国語 USB キーボード (Type 1)
101 韓国語 USB キーボード (Type 1) の HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters レジストリ エントリを次の表に示します。
元に戻す全体を表示する
|
値の名前
|
値の種類
|
値のデータ
|
|---|
|
LayerDriver KOR
|
REG_SZ
|
kbd101a.dll
|
|
OverrideKeyboardIdentifier
|
REG_SZ
|
PCAT_101AKEY
|
|
OverrideKeyboardSubtype
|
DWORD
|
3
|
|
OverrideKeyboardType
|
DWORD
|
8
|
101 韓国語 USB キーボード (Type 2)
101 韓国語 USB キーボード (Type 2) の HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters レジストリ エントリを次の表に示します。
元に戻す全体を表示する
|
値の名前
|
値の種類
|
値のデータ
|
|---|
|
LayerDriver KOR
|
REG_SZ
|
kbd101b.dll
|
|
OverrideKeyboardIdentifier
|
REG_SZ
|
PCAT_101BKEY
|
|
OverrideKeyboardSubtype
|
DWORD
|
4
|
|
OverrideKeyboardType
|
DWORD
|
8
|
101 韓国語 USB キーボード (Type 3)
101 韓国語 USB キーボード (Type 3) の HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters レジストリ エントリを次の表に示します。
元に戻す全体を表示する
|
値の名前
|
値の種類
|
値のデータ
|
|---|
|
LayerDriver KOR
|
REG_SZ
|
kbd101c.dll
|
|
OverrideKeyboardIdentifier
|
REG_SZ
|
PCAT_101CKEY
|
|
OverrideKeyboardSubtype
|
DWORD
|
5
|
|
OverrideKeyboardType
|
DWORD
|
8
|
103/106 韓国語 USB キーボード
103/106 韓国語 USB キーボードの HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters レジストリ エントリを次の表に示します。
元に戻す全体を表示する
|
値の名前
|
値の種類
|
値のデータ
|
|---|
|
LayerDriver KOR
|
REG_SZ
|
kbd103.dll
|
|
OverrideKeyboardIdentifier
|
REG_SZ
|
PCAT_103KEY
|
|
OverrideKeyboardSubtype
|
DWORD
|
6
|
|
OverrideKeyboardType
|
DWORD
|
8
|
PS/2 キーボードの場合の手順
「解決方法」には、USB キーボードを使用する場合にこの問題を解決する方法が記載されています。この問題に類似する現象が発生していて PS/2 キーボードを使用している場合、問題を解決するには、別の手順を使用する必要があります。PS/2 キーボードを使用している場合、この問題を解決するには、次の手順を実行します。
-
[スタート] ボタンをクリックし、[検索の開始] ボックスにデバイス マネージャと入力します。次に、[プログラム] の一覧の [デバイス マネージャ] をクリックします。
管理者のパスワードを要求するダイアログ ボックスが表示された場合はパスワードを入力して [OK] をクリックし、確認を要求するダイアログ ボックスが表示された場合は [続行] をクリックします。
-
デバイス マネージャで [キーボード] を展開し、キーボード デバイスをダブルクリックします。デフォルトでは、[101/102 英語キーボードまたは Microsoft Natural PS/2 キーボード] です。
-
[ドライバ] タブをクリックし、[ドライバの更新] をクリックします。
-
[コンピュータを参照してドライバ ソフトウェアを検索します] をクリックし、[コンピュータ上のデバイス ドライバの一覧から選択します] をクリックします。
-
[互換性のあるハードウェアを表示] チェック ボックスをオフにし、[日本語 PS/2 キーボード (106/109 キー)] をクリックします。
-
[次へ] をクリックし、ドライバの更新を警告するメッセージが表示されたら [はい] をクリックします。残りの手順を実行してキーボードを更新します。
-
コンピュータを再起動します。
注 : 後で 101/102 英語キーボードをコンピュータに接続する場合は、これらの手順を変更して、Windows Vista で [101/102 英語キーボードまたは Microsoft Natural PS/2 キーボード] デバイスが使用されるように構成してください。