你目前正处于脱机状态,正在等待 Internet 重新连接

在将 USB 键盘连接到计算机时,Windows Vista 可能不使用正确的键盘布局

症状
在将 USB 键盘连接到运行 Windows Vista 的计算机时,Windows Vista 可能不使用正确的键盘布局。

例如,如果将 USB 日语 106/109 键盘连接到计算机或将 USB 10 键键盘连接到计算机,则 Windows Vista 可能会像具有英语 101/102 键盘布局那样使用此设备。
原因
如果存在以下任何一种情况,就可能出现此问题:
  • USB 键盘包含一个具有定义为“USB 英语 101/102 键盘”的“即插即用 ID”的芯片。

    某些 USB 日语 106/109 键盘具有可共享“即插即用 ID”的英语 101/102 键盘芯片。如果将这种 USB 日语 106/109 键盘连接到计算机,Windows Vista 就会将其识别为英语设备。因此,Windows Vista 会将系统键盘布局更改为英语 101/102。
  • USB 键盘的“即插即用 ID”不在 Keyboard.inf 文件中定义。

    如果 USB 键盘的“即插即用 ID”不在 Keyboard.inf 文件中定义,则 Windows Vista 就无法识别键盘型号。当连接此类型的键盘时,Windows Vista 使用安装 Windows Vista 时所配置的默认键盘布局设置。例如,当连接日语 106/109 键盘或 USB 10 键键盘时可能会出现此问题。
  • Windows Vista 未正确识别键盘。

    在某些情况下,您使用的实际的键盘布局与 Windows Vista 定义的键盘布局不同步。当您使用通用 USB 键盘时,很可能会遇到此问题。出现此问题的原因是 Windows Vista 将通用 USB 键盘映射到您所选择的键盘布局的方式。
解决方案
要解决此问题,请配置
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
注册表子项以具有下表中出现的注册表项。
数值名称数值类型数值数据
LayerDriver JPNREG_SZkbd106.dll
OverrideKeyboardIdentifierREG_SZPCAT_106KEY
OverrideKeyboardSubtypeDWORD2
OverrideKeyboardTypeDWORD7
注意:有关英语 USB 键盘和朝鲜语 USB 键盘的相应注册表项,请参见“更多信息”一节。

如果需要为您修复此问题,请转到“帮我修复此问题”部分。如果您想自己修复此问题,请转到“我自己修复此问题”部分。

帮我修复此问题

若要自动修复此问题,请单击“修复此问题”链接。然后,在“文件下载”对话框中单击“运行”,并按照向导中的步骤操作。




注意:此向导可能只提供英文版本。但是,Windows 的其他语言版本也提供自动修复功能。

注意:如果您使用的计算机并未出现此问题,则可将自动修复功能保存至闪存驱动器或 CD 中,然后就可在出现此问题的计算机中运行该功能。

我自己修复此问题

重要说明:此部分、方法或任务包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756 如何在 Windows XP 中备份和还原注册表


若要自行配置这些注册表项,请按照下列步骤操作:
  1. 单击「开始」「开始」按钮,在“开始搜索”框中键入 regedit,然后单击“程序”列表中的 regedit

    用户帐户控制权限如果系统提示您输入管理员密码或进行确认,请键入密码或单击“继续”
  2. 找到并单击下面的注册表子项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
  3. 右键单击“LayerDriver JPN”,然后单击“修改”。

    注意:如果 LayerDriver JPN 注册表项不存在,则创建该注册表项。为此,请右键单击详细信息窗格中的空白区域,指向“新建”,然后单击“字符串值”。然后,键入 LayerDriver JPN 以命名新字符串值。
  4. 在“数值数据”框中,删除现有的值,并键入 kbd106.dll,然后单击“确定”。
  5. 右键单击“OverrideKeyboardIdentifier”,然后单击“修改”。

    注意:如果 OverrideKeyboardIdentifier 注册表项不存在,则创建该注册表项。为此,请右键单击详细信息窗格中的空白区域,指向“新建”,然后单击“字符串值”。然后,键入 OverrideKeyboardIdentifier 以命名新字符串值。
  6. 在“数值数据”框中,删除现有的值,并键入 PCAT_106KEY,然后单击“确定”。
  7. 右键单击“OverrideKeyboardSubtype”,然后单击“修改”。

    注意:如果 OverrideKeyboardSubtype 注册表项不存在,则创建该注册表项。为此,请右键单击详细信息窗格中的空白区域,指向“新建”,然后单击“DWORD (32-位)值”。然后,键入 OverrideKeyboardSubtype 以命名新的 DWORD 值。
  8. 在“数值数据”框中,删除现有的数值,并键入 2,然后单击“确定”。
  9. 右键单击“OverrideKeyboardType”,然后单击“修改”。

    注意:如果 OverrideKeyboardType 注册表项不存在,则创建该注册表项。为此,请右键单击详细信息窗格中的空白区域,指向“新建”,然后单击“DWORD (32-位)值”。然后,键入 OverrideKeyboardType 以命名新的 DWORD 值。
  10. 在“数值数据”框中,删除现有的数值,并键入 7,然后单击“确定”。
  11. 退出注册表编辑器。然后重新启动计算机。
注意:如果在重新启动计算机后键盘不按预期方式工作,则可能在您修改这些注册表设置时出现了拼写错误。要变通解决此问题,请使用屏幕键盘登录到计算机,然后验证注册表设置。
更多信息

英语和朝鲜语键盘注册表项

英语(美国)101/102 键键盘

下表演示了英语(美国)101/102 键 USB 键盘的
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
注册表项。
数值名称数值类型数值数据
LayerDriver JPNREG_SZkbd101.dll
OverrideKeyboardIdentifierREG_SZPCAT_101KEY
OverrideKeyboardSubtypeDWORD0
OverrideKeyboardTypeDWORD7

朝鲜语 101 键类型 1 USB 键盘

下表演示了朝鲜语 101 键类型 1 USB 键盘的
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
注册表项。
数值名称数值类型数值数据
LayerDriver KORREG_SZkbd101a.dll
OverrideKeyboardIdentifierREG_SZPCAT_101AKEY
OverrideKeyboardSubtypeDWORD3
OverrideKeyboardTypeDWORD8

朝鲜语 101 键类型 2 USB 键盘

下表演示了朝鲜语 101 键类型 2 USB 键盘的
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
注册表项。
数值名称数值类型数值数据
LayerDriver KORREG_SZkbd101b.dll
OverrideKeyboardIdentifierREG_SZPCAT_101BKEY
OverrideKeyboardSubtypeDWORD4
OverrideKeyboardTypeDWORD8

朝鲜语 101 键类型 3 USB 键盘

下表演示了朝鲜语 101 键类型 3 USB 键盘的
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
注册表项。
数值名称数值类型数值数据
LayerDriver KORREG_SZkbd101c.dll
OverrideKeyboardIdentifierREG_SZPCAT_101CKEY
OverrideKeyboardSubtypeDWORD5
OverrideKeyboardTypeDWORD8

朝鲜语 103/106 键 USB 键盘

下表演示了朝鲜语 103/106 键 USB 键盘的
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
注册表项。
数值名称数值类型数值数据
LayerDriver KORREG_SZkbd103.dll
OverrideKeyboardIdentifierREG_SZPCAT_103KEY
OverrideKeyboardSubtypeDWORD6
OverrideKeyboardTypeDWORD8

用于 PS/2 键盘的步骤

“解决方案”部分介绍了如何解决 USB 键盘出现的此问题。如果您遇到了与此问题类似的问题或您具有 PS/2 键盘,则您必须使用不同的步骤来解决此问题。如果要解决您的 PS/2 键盘的此问题,请按照下列步骤操作:
  1. 单击「开始」「开始」按钮,在“开始搜索”框中键入“设备管理器”,然后单击“程序”列表中的“设备管理器”

    用户帐户控制权限如果系统提示您输入管理员密码或进行确认,请键入密码或单击“继续”
  2. 在设备管理器中,展开“键盘”,然后双击键盘设备。默认情况下,键盘设备是“标准 101/102 键或 Microsoft 自然 PS/2 键盘”。
  3. 单击“驱动程序”选项卡,然后单击“更新驱动程序”。
  4. 单击“浏览计算机以查找驱动程序软件”,然后单击“从计算机的设备驱动程序列表中选择”。
  5. 单击以清除“显示兼容硬件”复选框,然后单击“日语 PS/2 键盘(106/109 键)”。
  6. 单击“下一步”,如果您接收到更新驱动程序警告消息,则单击“是”,然后按照其余步骤来更新键盘。
  7. 重新启动计算机。
注意:如果以后将英语 101/102 键盘连接到计算机,则需修改这些步骤以将 Windows Vista 配置为使用“标准 101/102-键或 Microsoft Natural PS/2 键盘”设备。
fixit fix it 修复
属性

文章 ID:927824 - 上次审阅时间:11/16/2009 11:11:38 - 修订版本: 2.0

Windows Vista Home Basic, Windows Vista Home Premium, Windows Vista Ultimate, Windows Vista Business, Windows Vista Enterprise, Windows Vista Starter, Windows Vista Home Basic 64-bit edition, Windows Vista Home Premium 64-bit edition, Windows Vista Ultimate 64-bit edition, Windows Vista Enterprise 64-bit edition

  • kbfixme kbmsifixme kbexpertisebeginner kbhardware kbtshoot kbprb KB927824
反馈