c++ - 使用 win32 应用程序获取系统的文化信息

标签 c++ winapi mfc

我正在使用 win32 控制台应用程序。我想在我的 win32 应用程序中获取当前系统区域设置或文化信息。 如 en-US 或 zh-CN。

有没有WINAPI提供的东西。

这方面的示例代码真的很有帮助。

最佳答案

你应该使用 GetLocaleInfo .

wchar_t szISOLang[5] = { 0 };
wchar_t szISOCountry[5] = { 0 };

::GetLocaleInfo(LOCALE_USER_DEFAULT,
    LOCALE_SISO639LANGNAME,
    szISOLang,
    sizeof(szISOLang) / sizeof(wchar_t));

::GetLocaleInfo(LOCALE_USER_DEFAULT,
    LOCALE_SISO3166CTRYNAME,
    szISOCountry,
    sizeof(szISOCountry) / sizeof(WCHAR));

std::wcout << szISOLang << "_" << szISOCountry << std::endl;

enter image description here

关于c++ - 使用 win32 应用程序获取系统的文化信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55517983/

相关文章:

c++ - C/C++ 代码中的奇怪现象(ISO C++ 禁止声明无类型的 'xxx')

c - Windows 中 char * 和 LPSTR 的区别

winapi - 基于 Win32 对话框的无边框窗口,具有位图背景和视觉样式

c++ - 在for循环中减少2个变量?

c++ - Windows CE MessageBox 不显示 unicode 文本和图标透明度

c++ - 如果我不使用变量,我可以在翻译单元中有多个定义吗?

c++ - 在 C++ 或 Python 中从多个输入文件创建矩阵

c++ - 二级后代类中不可访问的基

c++ - 在Windows中通过串口写入二进制数据

c++ - 如何在特定窗口中设置控件的初始焦点?