屏幕键盘语言布局
重要
从 Windows 10 IoT 核心版版本 1809 开始,本文不再适用。 请参阅当前文档的有外设设备的屏幕键盘页。
Windows 10 IoT 核心版版本 1703、1709 和 1803 中的屏幕键盘 (OSK) 支持以下语言的布局:
语言标记 | 说明 | 布局代码 |
---|---|---|
en-US | 英语(美国) | 00000409 |
en-AU | 英语(澳大利亚) | 00000C09 |
en-CA | 英语(加拿大) | 00001009 |
en-GB | 英语(英国) | 00000809 |
es-ES | 西班牙语(西班牙) | 0000040A |
es-MX | 西班牙语(墨西哥) | 0000080A |
de-DE | 德语 | 00000407 |
fr-CA | 法语(加拿大) | 00000C0C |
fr-FR | 法语(法国) | 0000040C |
it-IT | 意大利语 | 00000410 |
pt-BR | 葡萄牙语(巴西) | 00000416 |
通过按住 OSK 的“&123”按钮,用户可以选择要使用的布局:
但作为 OEM,你可以限制向用户显示的布局选项。 要限制向用户显示的布局,首先请参考 TechNet 上的键盘布局文档中的指南。
对于具体的示例,如果只想允许北美语言布局(en-US、en-CA、es-MX 和 fr-CA),则可以将以下代码添加到 OEMCustomization.cmd 脚本:
call "%~dp0\setKeyboardLanguages.cmd"
其中,setKeyboardLanguages.cmd 是同一个目录中包含以下代码的脚本:
@echo off
set getDefaultAccountSID="wmic.exe useraccount where name='DefaultAccount' get sid"
for /F "tokens=2 usebackq delims== " %%s in (`%getDefaultAccountSID%`) do (
set registryKey="HKEY_USERS\%%~s\Keyboard Layout\Preload"
goto :setRegistry
)
)
echo Unable to determine SID for DefaultAccount
goto :eof
:setRegistry
echo on
REG ADD %registryKey% /v "1" /d "00000409" /f
REG ADD %registryKey% /v "2" /d "00001009" /f
REG ADD %registryKey% /v "3" /d "0000080A" /f
REG ADD %registryKey% /v "4" /d "00000C0C" /f
@echo off
goto :eof
上述命令脚本产生的结果将为:
需要注意的一些事项
- 值名称指示十进制序列。
- 值是字符串值 (REG_SZ)。
- 当然,上述脚本文本可以直接添加到 OEMCustomization.cmd 脚本。
- 请勿删除“预加载”注册表项,因为它设置了权限,以允许屏幕键盘应用程序读取其值。
- 这些说明适用的先决条件是,映像必须包含以下功能*:
- IOT_SHELL_ONSCREEN_KEYBOARD
- IOT_SHELL_ONSCREEN_KEYBOARD_FOLLOWFOCUS
有关 IoT 功能的详细信息,请参阅 IoT 核心版功能列表。