检查区域设置

时间:2011-04-12 08:26:58

标签: c++ winapi mfc

在我的应用程序中,我需要检查它所运行的计算机上的区域设置是否为俄语。另外,我需要知道是否安装了俄语键盘布局。

这背后的意图是要知道这台计算机是否可能(我不需要100%肯定,可能已经足够好)由俄罗斯人拥有。我的想法是检查区域设置是否设置为俄语,和/或是否安装了俄语键盘布局,因为这些都可能出现在俄语拥有的计算机中,但不太可能出现在计算机上比如,由美国人拥有。

顺便说一下,这不是真正的俄语,这是我要检查的其他国籍,我只是以它为例。

我该如何检查?

1 个答案:

答案 0 :(得分:1)

National Language Support Functions是一个很好的起点。

您需要确定所需的信息 - 您可以检查线程的现有,已安装,系统默认,用户默认或活动的区域设置。 GetThreadLocale将告诉您线程的活动区域设置,GetUserDefaultLCIDGetSystemDefaultLCID将告诉您默认值,EnumSystemLocales函数将让您查看存在/安装的区域设置,或者您可以使用IsValidLocale检查是否安装了特定的区域设置。