Article ID: 304614 - Last Review: January 31, 2007 - Revision: 1.2 Keyboard Layout May Be Incorrect After Installing USB KeyboardThis article was previously published under Q304614 IMPORTANT: This article contains information about modifying the registry. Before you
modify the registry, make sure to back it up and make sure that you understand how to restore
the registry if a problem occurs. For information about how to back up, restore, and edit the
registry, click the following article number to view the article in the Microsoft Knowledge Base:
256986
(http://support.microsoft.com/kb/256986/EN-US/
)
Description of the Microsoft Windows Registry
On This PageSYMPTOMS
If you install a Universal Serial Bus (USB) keyboard on a computer that is already equipped with a keyboard with a different layout and then reboot the computer, the keyboard layout may default to the English 101/104 layout. This problem can occur if either of the following conditions applies to the USB keyboard:
CAUSE
Windows Me does not support multiple keyboards with different layouts. Prohibitively complex design changes in a number of system components would be necessary to implement additional abstraction of keyboard mapping between multiple keyboards and input processing. For example, if your laptop keyboard type is Japanese 106 and you plug in a supported USB keyboard with an English 101/104 layout, only one of the keyboards is properly mapped. This occurs because keyboard information is maintained in a single registry key that is set during installation, or by the System Configuration Utility (Msconfig). The values are read into system memory when Windows starts. The default value for unknown (or unsupported) keyboards is English 101/104. RESOLUTION
After you complete the following steps, the keyboard layout will be correct over successive restarts, even if you unplug the USB keyboard and then plug it back in to the same USB port. Note that if you plug the USB keyboard into a different USB port, you may need to follow the steps again.
Using the System Configuration Utility to Change the Keyboard Layout
STATUSThis behavior is by design. MORE INFORMATIONWARNING: If you use Registry Editor incorrectly, you may cause serious problems that may
require you to reinstall your operating system. Microsoft cannot guarantee that you can solve
problems that result from using Registry Editor incorrectly. Use Registry Editor at your own
risk. Please review the following Microsoft Knowledge Base article before you attempt any operations with the following sample .inf file text: 171424
(http://support.microsoft.com/kb/171424/EN-US/
)
How to Remove Windows 95/98 Registry Entries Automatically
Microsoft recommends that you follow the steps in the "Resolution" section of this article instead.
For the Japanese 106 keyboard, you can save the following text in an .inf file, right-click the file, and then click Install. The following sample .inf file text is provided as an example only, and should not be used on any non-Japanese Windows Me installation:
[version]
This is a sample equivalent for the Japanese 101 keyboard:
signature = "$CHICAGO$" AdvancedINF = 2.5, %AdvPackWarn% [DefaultInstall] AddReg = Add.Reg.106 DelReg = Del.Reg [Add.Reg.106] HKLM,%NlsKey%,DOSCP,,932 HKLM,%NlsKey%,OEMCC,,81 HKLM,%NlsKey%,COUNTRYFNAME,,%11%\country.sys HKLM,%NlsKey%,KYBFNAME,,jkeybrd.sys HKLM,%NlsKey%,KYBTYPE,,106 HKLM,%NlsKey%,LANGID,," " [Del.Reg] HKLM,%NlsKey%,CODEPAGEFNAME HKLM,%NlsKey%,KYBLAYOUT [Strings] NlsKey = System\CurrentControlSet\Control\Nls\Codepage
[version] signature = "$CHICAGO$" AdvancedINF = 2.5, %AdvPackWarn% [DefaultInstall] AddReg = Add.Reg.101 DelReg = Del.Reg [Add.Reg.101] HKLM,%NlsKey%,DOSCP,,932 HKLM,%NlsKey%,OEMCC,,81 HKLM,%NlsKey%,COUNTRYFNAME,,%11%\country.sys HKLM,%NlsKey%,KYBFNAME,,jkeybrd.sys HKLM,%NlsKey%,KYBTYPE,,101 HKLM,%NlsKey%,LANGID,," " [Del.Reg] HKLM,%NlsKey%,CODEPAGEFNAME HKLM,%NlsKey%,KYBLAYOUT [Strings] NlsKey = System\CurrentControlSet\Control\Nls\Codepage Sample Registry SettingsRegistry key:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Nls\Codepage
Values:
Registry
Control label value name Sample [Japanese 106]
--------------------------------------------------------------------------
MS-DOS Code Page: DOSCP "932"
Country Code: OEMCC "81"
Country Data File Name: COUNTRYFNAME "C:\Windows\COMMAND\country.sys"
Display Data File Name: CODEPAGEFNAME (not present)
Keyboard Data File Name: KYBFNAME "C:\Windows\COMMAND\jkeybrd.sys"
Keyboard Type: KYBTYPE "106"
Keyboard Layout: KYBLAYOUT (not present)
Language ID: LANGID " "
Registry Sample NLS API Value value name value function meaning ---------------------------------------- ACP "932" GetACP() Japanese OEMCP "932" GetOEMCP() Japan REFERENCESFor additional information about a related issue with Microsoft Windows 2000, click the article number below
to view the article in the Microsoft Knowledge Base:
280725
(http://support.microsoft.com/kb/280725/EN-US/
)
USB Keyboard Layout Incorrectly Changes to English 101
For additional information about the KEYB command, click the article number below
to view the article in the Microsoft Knowledge Base:
261417
(http://support.microsoft.com/kb/261417/EN-US/
)
Keyboard Command Does Not Work in Command Prompt
For additional information about an update to Msconfig, click the article number below
to view the article in the Microsoft Knowledge Base:
272719
(http://support.microsoft.com/kb/272719/EN-US/
)
International Keyboard Settings Do Not Work in an MS-DOS Prompt
| Article Translations
|

Back to the top
