我是mfc的新手,我对如何获取当前的操作系统语言感到震惊(例如:如果是英文操作系统我必须得到它,因为英语和语言环境可能不同。对于英语操作系统语言环境可以是日语反之亦然。)
当前的语言环境我通过GetSystemDefaultLangID
得到它,我唯一留下的是我需要获取当前的操作系统语言。
任何人都可以帮助我解决这个问题。
答案 0 :(得分:5)
之前出现了这个问题。也许你需要GetUserDefaultUILanguage
?
User Interface Language Management
int wmain(int argc, _TCHAR* argv[])
{
wcout << "GetUserDefaultUILanguage: " << GetUserDefaultUILanguage() << endl;
wcout << "GetSystemDefaultUILanguage: " << GetSystemDefaultUILanguage() << endl;
wcout << endl;
wcout << "GetUserDefaultLangID: " << GetUserDefaultLangID() << endl;
wcout << "GetSystemDefaultLangID: " << GetSystemDefaultLangID() << endl;
wcout << endl;
wcout << "GetUserDefaultLCID: " << GetUserDefaultLCID() << endl;
wcout << "GetSystemDefaultLCID: " << GetSystemDefaultLCID() << endl;
wcout << endl;
wchar_t buf[100];
LCID lcid = GetUserDefaultLCID();
cout << "GetUserDefaultLCID: " << endl;
if (GetLocaleInfo(lcid, LOCALE_ILANGUAGE, buf, 100)) wcout << buf << endl;
if (GetLocaleInfo(lcid, LOCALE_SENGLANGUAGE, buf, 100)) wcout << buf << endl;
if (GetLocaleInfo(lcid, LOCALE_SISO639LANGNAME, buf, 100)) wcout << buf << endl << endl;
system("pause");
return 0;
}