Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 将消息格式化为其他语言_C++_Windows_Winapi_Locale_Formatmessage - Fatal编程技术网

C++ 将消息格式化为其他语言

C++ 将消息格式化为其他语言,c++,windows,winapi,locale,formatmessage,C++,Windows,Winapi,Locale,Formatmessage,有可能翻译成一种特定的语言吗 我只能通过考试。否则,函数调用在15100时失败(资源加载器找不到MUI文件) 系统错误消息存储在哪里?为什么我不能加载不同于系统语言环境的消息?基本上,MUI代表多语言用户界面。这些是语言包。在windows中,默认情况下无法获取它们。相反,他们必须安装 下面的链接帮助您了解采购 默认情况下,windows 10将显示上述页面。对于其他版本的windows,有一个下拉选项可供选择 如果您对上述链接有困难,请在google中搜索适用于windows 10或任何其他

有可能翻译成一种特定的语言吗

我只能通过考试。否则,函数调用在15100时失败(资源加载器找不到MUI文件)


系统错误消息存储在哪里?为什么我不能加载不同于系统语言环境的消息?

基本上,MUI代表多语言用户界面。这些是语言包。在windows中,默认情况下无法获取它们。相反,他们必须安装

下面的链接帮助您了解采购

默认情况下,windows 10将显示上述页面。对于其他版本的windows,有一个下拉选项可供选择


如果您对上述链接有困难,请在google中搜索适用于windows 10或任何其他版本的MUI语言包。

基本上MUI代表多语言用户界面。这些是语言包。在windows中,默认情况下无法获取它们。相反,他们必须安装

下面的链接可以帮助您进行采购

默认情况下,windows 10将显示上述页面。对于其他版本的windows,有一个下拉选项可供选择


如果您对上述链接有困难,请在谷歌中搜索适用于windows 10或任何其他版本的MUI语言包。

使用零表示语言id,而不是
MAKELANGID(LANG\u ENGLISH,SUBLANG\u ENGLISH\u US)
。然后,
FormatMessage
将根据线程的语言id选择资源,或者它使用
GetUserDefaultLangID

文件:

dwLanguageId

如果在此参数中传递特定的LANGID,
FormatMessage
将 仅返回该LANGID的消息。如果函数找不到 消息,它将最后一个错误设置为
错误\u资源\u语言\u未找到
如果传入零
FormatMessage
在下面的列表中查找LangID的消息 订单:

  • 语言中立
  • 线程LANGID,基于线程的区域设置值
  • 用户默认LANGID,基于用户的默认区域设置值
  • 系统默认语言ID,基于系统默认语言环境值
  • 美国英语

  • 语言id使用零,而不是
    MAKELANGID(LANG\u ENGLISH,SUBLANG\u ENGLISH\u US)
    。然后,
    FormatMessage
    将根据线程的语言id选择资源,或者它使用
    GetUserDefaultLangID

    文件:

    dwLanguageId

    如果在此参数中传递特定的LANGID,
    FormatMessage
    将 仅返回该LANGID的消息。如果函数找不到 消息,它将最后一个错误设置为
    错误\u资源\u语言\u未找到
    如果传入零
    FormatMessage
    在下面的列表中查找LangID的消息 订单:

  • 语言中立
  • 线程LANGID,基于线程的区域设置值
  • 用户默认LANGID,基于用户的默认区域设置值
  • 系统默认语言ID,基于系统默认语言环境值
  • 美国英语

  • 如果这是为了测试,那么您可以在自己的计算机上安装特定的语言。否则只需使用
    MAKELANGID(LANG\u NEUTRAL,SUBLANG\u DEFAULT)
    或者您有一个复杂的目标吗?实际上,我想统一错误通知机制,例如,将系统错误代码翻译为我的应用程序中当前选择的语言。我遇到了同样的问题,FormatMessage以英语返回消息,但当我更改语言时,它找不到MUI文件。我下载了语言包,但似乎不明白为什么它不起作用。你知道它是如何工作的吗?如果这是为了测试,那么你可以在自己的计算机上安装特定的语言。否则只需使用
    MAKELANGID(LANG\u NEUTRAL,SUBLANG\u DEFAULT)
    或者您有一个复杂的目标吗?实际上,我想统一错误通知机制,例如,将系统错误代码翻译为我的应用程序中当前选择的语言。我遇到了同样的问题,FormatMessage以英语返回消息,但当我更改语言时,它找不到MUI文件。我下载了语言包,但似乎不明白为什么它不起作用。知道你是怎么做到的吗?
    DWORD WINAPI FormatMessage(
      _In_     DWORD   dwFlags,
      _In_opt_ LPCVOID lpSource,
      _In_     DWORD   dwMessageId,
      _In_     DWORD   dwLanguageId,
      _Out_    LPTSTR  lpBuffer,
      _In_     DWORD   nSize,
      _In_opt_ va_list *Arguments
    );