c++ - Windows:如何检测键盘布局 3 字符缩写的本地化语言名称,如任务栏上的输入指示器中所示
问题描述
我正在创建一个库,以便轻松检测活动线程的各种键盘布局信息。它借助 GetKeyboardLayout、GetKeyboardLayoutName、ResolveLocaleName、GetLocaleInfoEx 检测布局语言代码、显示名称、语言名称、国家(本地化和否)等。
但是我仍然无法理解的一件事是如何获得 Windows 任务栏上显示的本地化语言代码,即,当我将布局切换到英语时,它显示“ENG”并切换到俄语它显示“РУС”(“RUS”但是相应地本地化为俄罗斯语言)。
使用 GetLocaleInfoEx 和 LOCALE_SISO639LANGNAME2 我得到了用户当前选择的语言环境(用于当前活动窗口)的 3 个字符的缩写语言名称,但只有英语 - 相应的“ENG”和“RUS”。那么,如何以所选语言/区域设置获得它?
解决方案
推荐阅读
- python - TensorFlow-gpu 未在 Windows 机器中正确安装
- assembly - 压入堆栈的值去哪儿了?
- blockchain - IPFS bizantine 容错吗?
- swift - 是否可以将自定义 UITableViewCell 存储到数组中?
- python - 打印语句中的 For Loop 将生成器功能作为输出
- amazon-web-services - 无法使用 kops 在 AWS 上安装 Kubernetes
- java - 在 Hibernate 中为 LocalDateTime 创建列类型 Datetime
- c# - 将 DLL 转换为 XSD
- android - EditText“maxLines”属性不起作用
- c++ - Windows C++:文件夹移动访问被拒绝错误