如何确定活动键盘布局的名称?

Rom*_*kov 5 winapi

我可以调用GetKeyboardLayout来检索"输入区域设置标识符",它标识Windows中的活动布局.如何将其转换为人类可读的名称,例如"英语(美国)"?

GetKeyboardLayoutName是误导性的 - 它只返回一个包含检索到的标识符的十六进制版本的字符串GetKeyboardLayout.

Nic*_*kis 3

以下是键盘布局名称及其按键名称的列表。

编辑: 我扫描了注册表,并在此位置找到了键盘布局名称:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\键盘布局