VC++获取Windows操作系统的语言版本
来源:http://www.tudoupe.com时间:2022-04-09
目录
1. 该系统提供多种语文版本的API功能。
2. MSDN 职能说明
3. 操作系统语言学习示范代码
以多种语言列出的语文代号列表
就允许多种语文版本的软件而言,使用视窗操作系统操作客户,有必要了解客户Windows操作系统的语文版本。例如,中国-信贷操作系统,例如英语操作系统,等等。例如,在我们开发一个多语言安装包时,它必须使用现行系统的语言。将系统语言设为安装期间的默认语言。换句话说,如果现在正在使用认证操作系统,它将能够使用该系统。本项目是我们对2011年中国选举的特别报道的一部分。关于英语操作系统则要默认使用英文。这是获取Windows操作系统语言版本的程序。

1. 该系统提供多种语文版本的API功能。
视窗包括获取几种获取语言的API:GetSystemDefaultLangID、GetUserDefaultLangID、GetSystemDefaultUILanguage和GetUserDefaultUILanguage这些 API 方法非常相似 。 其中哪一种方法应该使用? 我们可以查看 MSDN 对这些功能的解释, 后者相当不同, 然后使用 GetUser DefaulteUILanguage 函数 。
2. MSDN 职能说明
GetSystemDefaultLangIDMSDN 说明:
Returns the language identifier for the system locale. This is the language used when displaying text in programs that do not support Unicode. It is set by the Administrator under Control Panel > Clock, Language, and Region> Administrative tab.
由上述说明可知,GetSystemDefaultLangID函数获取的语言是控制面板 -> 区域与语言选项 -> 管理标签页中设置的支持的非Unicode语言,即如下图所示:

GetUserDefaultLangIDMSDN 说明:
Returns the language identifier for the current user as set under Control Panel > Clock, Language, and Region > Formats tab > Format dropdown.
由上述文字可知,GetUserDefaultLangID函数获取的语言是控制面板 -> 区域与语言选项 -> 格式标签页中设置的标准与格式语言,即如下图所示:

GetSystemDefaultUILanguageMSDN 说明:
Retrieves the language identifier for the system default UI language of the operating system, also known as the "install language" on Windows Vista and later. For more information, see User Interface Language Management.
GetUserDefaultUILanguageMSDN 说明:
Returns the language identifier for the user UI language for the current user. If the current user has not set a language, GetUserDefaultUILanguage returns the preferred language set for the system. If there is no preferred language set for the system, then the system default UI language (also known as "install language") is returned. For more information about the user UI language, see User Interface Language Management.
综上所述,GetSystem DefaultLangID 和 GetUser DefaultLangID 方法分别使用的语言。它是一种受区域语言设置中语言组合影响的语言。因此,这两个功能不是我们要找的。我们需要Windows操作系统的语言版本。GetSystem DefaultUI 语言在另一方面有一个更加一致的应用程序 。最可接受的方法应该是GetUserDefaultUI语言。因此,GetUserDefaulteUILanguage方法是最终用途。
3. 操作系统语言学习示范代码
以下是访问Windows操作系统语言变体的一些示例代码:
当您使用它时,你只需要确定程序应该支持的每种语言的代号,并添加相关处理。
以多种语言列出的语文代号列表
可以到VC6对应的2001年msdn版本 2001年中,搜索GetSystemDefaultLangID函数( 仅此函数页面中包含链接到“语言标识符”。 点击“语言标识表”:

每种语文的语文开列如下:(最常见民族的语文,如中华民国、韩文、日文等。 )
| Identifier | Language |
|---|---|
| 0x0000 | Language Neutral |
| 0x007f | The language for the invariant locale (LOCALE_INVARIANT). See MAKELCID . |
| 0x0400 | Process or User Default Language |
| 0x0800 | System Default Language |
| 0x0436 | Afrikaans |
| 0x041c | Albanian |
| 0x0401 | Arabic (Saudi Arabia) |
| 0x0801 | Arabic (Iraq) |
| 0x0c01 | Arabic (Egypt) |
| 0x1001 | Arabic (Libya) |
| 0x1401 | Arabic (Algeria) |
| 0x1801 | Arabic (Morocco) |
| 0x1c01 | Arabic (Tunisia) |
| 0x2001 | Arabic (Oman) |
| 0x2401 | Arabic (Yemen) |
| 0x2801 | Arabic (Syria) |
| 0x2c01 | Arabic (Jordan) |
| 0x3001 | Arabic (Lebanon) |
| 0x3401 | Arabic (Kuwait) |
| 0x3801 | Arabic (U.A.E.) |
| 0x3c01 | Arabic (Bahrain) |
| 0x4001 | Arabic (Qatar) |
| 0x042b | Windows 2000/XP:Armenian. This is Unicode only. |
| 0x042c | Azeri (Latin) |
| 0x082c | Azeri (Cyrillic) |
| 0x042d | Basque |
| 0x0423 | Belarusian |
| 0x0402 | Bulgarian |
| 0x0455 | Burmese |
| 0x0403 | Catalan |
| 0x0404 | Chinese (Taiwan) |
| 0x0804 | Chinese (PRC) |
| 0x0c04 | Chinese (Hong Kong SAR, PRC) |
| 0x1004 | Chinese (Singapore) |
| 0x1404 | Windows 98/Me, Windows 2000/XP:Chinese (Macau SAR) |
| 0x041a | Croatian |
| 0x0405 | Czech |
| 0x0406 | Danish |
| 0x0465 | Windows XP:Divehi. This is Unicode only. |
| 0x0413 | Dutch (Netherlands) |
| 0x0813 | Dutch (Belgium) |
| 0x0409 | English (United States) |
| 0x0809 | English (United Kingdom) |
| 0x0c09 | English (Australian) |
| 0x1009 | English (Canadian) |
| 0x1409 | English (New Zealand) |
| 0x1809 | English (Ireland) |
| 0x1c09 | English (South Africa) |
| 0x2009 | English (Jamaica) |
| 0x2409 | English (Caribbean) |
| 0x2809 | English (Belize) |
| 0x2c09 | English (Trinidad) |
| 0x3009 | Windows 98/Me, Windows 2000/XP:English (Zimbabwe) |
| 0x3409 | Windows 98/Me, Windows 2000/XP:English (Philippines) |
| 0x0425 | Estonian |
| 0x0438 | Faeroese |
| 0x0429 | Farsi |
| 0x040b | Finnish |
| 0x040c | French (Standard) |
| 0x080c | French (Belgian) |
| 0x0c0c | French (Canadian) |
| 0x100c | French (Switzerland) |
| 0x140c | French (Luxembourg) |
| 0x180c | Windows 98/Me, Windows 2000/XP:French (Monaco) |
| 0x0456 | Windows XP:Galician |
| 0x0437 | Windows 2000/XP:Georgian. This is Unicode only. |
| 0x0407 | German (Standard) |
| 0x0807 | German (Switzerland) |
| 0x0c07 | German (Austria) |
| 0x1007 | German (Luxembourg) |
| 0x1407 | German (Liechtenstein) |
| 0x0408 | Greek |
| 0x0447 | Windows XP:Gujarati. This is Unicode only. |
| 0x040d | Hebrew |
| 0x0439 | Windows 2000/XP:Hindi. This is Unicode only. |
| 0x040e | Hungarian |
| 0x040f | Icelandic |
| 0x0421 | Indonesian |
| 0x0410 | Italian (Standard) |
| 0x0810 | Italian (Switzerland) |
| 0x0411 | Japanese |
| 0x044b | Windows XP:Kannada. This is Unicode only. |
| 0x0457 | Windows 2000/XP:Konkani. This is Unicode only. |
| 0x0412 | Korean |
| 0x0812 | Windows 95, Windows NT 4.0 only:Korean (Johab) |
| 0x0440 | Windows XP:Kyrgyz. |
| 0x0426 | Latvian |
| 0x0427 | Lithuanian |
| 0x0827 | Windows 98 only:Lithuanian (Classic) |
| 0x042f | FYRO Macedonian |
| 0x043e | Malay (Malaysian) |
| 0x083e | Malay (Brunei Darussalam) |
| 0x044e | Windows 2000/XP:Marathi. This is Unicode only. |
| 0x0450 | Windows XP:Mongolian |
| 0x0414 | Norwegian (Bokmal) |
| 0x0814 | Norwegian (Nynorsk) |
| 0x0415 | Polish |
| 0x0416 | Portuguese (Brazil) |
| 0x0816 | Portuguese (Portugal) |
| 0x0446 | Windows XP:Punjabi. This is Unicode only. |
| 0x0418 | Romanian |
| 0x0419 | Russian |
| 0x044f | Windows 2000/XP:Sanskrit. This is Unicode only. |
| 0x0c1a | Serbian (Cyrillic) |
| 0x081a | Serbian (Latin) |
| 0x041b | Slovak |
| 0x0424 | Slovenian |
| 0x040a | Spanish (Spain, Traditional Sort) |
| 0x080a | Spanish (Mexican) |
| 0x0c0a | Spanish (Spain, International Sort) |
| 0x100a | Spanish (Guatemala) |
| 0x140a | Spanish (Costa Rica) |
| 0x180a | Spanish (Panama) |
| 0x1c0a | Spanish (Dominican Republic) |
| 0x200a | Spanish (Venezuela) |
| 0x240a | Spanish (Colombia) |
| 0x280a | Spanish (Peru) |
| 0x2c0a | Spanish (Argentina) |
| 0x300a | Spanish (Ecuador) |
| 0x340a | Spanish (Chile) |
| 0x380a | Spanish (Uruguay) |
| 0x3c0a | Spanish (Paraguay) |
| 0x400a | Spanish (Bolivia) |
| 0x440a | Spanish (El Salvador) |
| 0x480a | Spanish (Honduras) |
| 0x4c0a | Spanish (Nicaragua) |
| 0x500a | Spanish (Puerto Rico) |
| 0x0430 | Sutu |
| 0x0441 | Swahili (Kenya) |
| 0x041d | Swedish |
| 0x081d | Swedish (Finland) |
| 0x045a | Windows XP:Syriac. This is Unicode only. |
| 0x0449 | Windows 2000/XP:Tamil. This is Unicode only. |
| 0x0444 | Tatar (Tatarstan) |
| 0x044a | Windows XP:Telugu. This is Unicode only. |
| 0x041e | Thai |
| 0x041f | Turkish |
| 0x0422 | Ukrainian |
| 0x0420 | Windows 98/Me, Windows 2000/XP:Urdu (Pakistan) |
| 0x0820 | Urdu (India) |
| 0x0443 | Uzbek (Latin) |
| 0x0843 | Uzbek (Cyrillic) |
| 0x042a | Windows 98/Me, Windows NT 4.0 and later:Vietnamese |
相关新闻
- 2022-08-04 WPF的由来
- 2022-08-04 Win11勒索软件防护怎么打开?Win11安
- 2022-08-04 Windows系统jdk的配置
- 2022-08-04 Windows10 OneNote怎么重新登录?如何重
- 2022-08-04 超好用的 Windows 效率工具推荐
- 2022-08-04 Windows如何在CMD或PowerShell中配置代理
- 2022-08-04 powershell和cmd对比
- 2022-08-04 【QT】Windows下QT下载安装
- 2022-08-04 windows下 C++ 实现类属性的get和set方
- 2022-08-04 Win11快速助手在哪里?Win11打开快速
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
