How to get OS language using C++ API?

后端 未结 3 1142
暗喜
暗喜 2021-01-03 09:00

I am in the process of developing a application which displays dialogs depending on the OS language. How I can get the OS language using C++ or Windows APIs (Windows 2008/Vi

相关标签:
3条回答
  • 2021-01-03 09:21

    The accepted answer to this question is wrong. You should not make user interface decisions based on the default locale. Use GetDefaultUILanguage for this.

    0 讨论(0)
  • 2021-01-03 09:22

    Do you resolve this problem?
    If answer is No,
    LPWSTR lpLocalName=NULL is wrong.
    LPWSTR lpLocalName=NULL ----> WCHAR localName[LOCALE_NAME_MAX_LENGTH] is right. Because No memory allocation is in GetUserDefaultLocalName.

    0 讨论(0)
  • 2021-01-03 09:41

    There are several functions to do this in Windows, depending on what format you want the information in. Prior to Windows Vista, the language information was encoded into a LCID (Locale Id) which includes language, as well as some information about sorting and formatting.

    For Windows Vista and Windows 7, a more flexible system called Locale Names was devised. GetSystemDefaultLocaleName

    Use this if you want to work on Win2k and WinXP. GetSystemDefaultLCID

    0 讨论(0)
提交回复
热议问题