从控制面板获取用户的首选语言列表的正确方法是什么?

问题描述

在Windows 10(和较旧的版本-这似乎是Win8中引入的吗?)的“语言设置”控制面板中,有一个“首选语言”列表。以编程方式获取该列表的正确方法是什么?

我可以看到它存储在HKEY_CURRENT_USER\Control Panel\International\User Profile\Languages注册表中,但是我认为不打算直接读取它。

我找到了听起来不错的API GetUserPreferredUILanguages,但是返回错误的结果。

具体来说,在控制面板和注册表项中,我当前拥有列表en-NZ en-US it-IT,但是API返回en-GB en-US。我不知道从哪里得到的。 (或者为什么缺少意大利语。)

GetUserDefaultLocaleName API确实正确返回了en-NZ,但它似乎也从其他地方得到了-当我在控制面板中重新排列语言列表时,注册表会更新,但API返回值不变。

我确实想要完整的语言列表,而不仅仅是一个答案。 (此外,出于好奇,API从哪个控制面板获取答案?)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)