如何获取当前操作系统语言?

How to get current operating system language?

我是 mfc 的新手,我对如何获取当前操作系统语言感到震惊(例如:如果是英文操作系统,我必须获取它,因为英文和区域设置可能不同。对于英文 OS 语言环境可以是日语,反之亦然)。

当前语言环境我正在通过 GetSystemDefaultLangID 获取它,唯一剩下的就是我需要获取当前操作系统语言。

谁能帮我解决这个问题。

也许你需要GetUserDefaultUILanguage。系统设置和用户设置可能不一样

User Interface Language Management

int wmain()
{
    wcout << "GetUserDefaultUILanguage:   " << GetUserDefaultUILanguage() << "\n";
    wcout << "GetSystemDefaultUILanguage: " << GetSystemDefaultUILanguage() << "\n";
    wcout << "\n";
    wcout << "GetUserDefaultLangID:       " << GetUserDefaultLangID() << "\n";
    wcout << "GetSystemDefaultLangID:     " << GetSystemDefaultLangID() << "\n";
    wcout << "\n";
    wcout << "GetUserDefaultLCID:         " << GetUserDefaultLCID() << "\n";
    wcout << "GetSystemDefaultLCID:       " << GetSystemDefaultLCID() << "\n";
    wcout << "\n";

    wchar_t buf[100];
    LCID lcid = GetUserDefaultLCID();
    cout << "GetUserDefaultLCID: " << "\n";
    if (GetLocaleInfo(lcid, LOCALE_ILANGUAGE, buf, 100)) wcout << buf << "\n";
    if (GetLocaleInfo(lcid, LOCALE_SENGLANGUAGE, buf, 100))  wcout << buf << "\n";
    if (GetLocaleInfo(lcid, LOCALE_SISO639LANGNAME, buf, 100)) wcout << buf << "\n";

    return 0;
}