Как получить сообщения об ошибках на английском языке в версии Windows на иностранном языке? - PullRequest
2 голосов
/ 21 сентября 2009

Я использую голландскую версию Windows, и у меня есть этот кусок кода:

::FormatMessage
(
  FORMAT_MESSAGE_ALLOCATE_BUFFER
  | FORMAT_MESSAGE_FROM_SYSTEM
  | FORMAT_MESSAGE_IGNORE_INSERTS,
  NULL,
  lastError,
  MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT),
  (LPTSTR)&lpMsgBuf,
  0,
  NULL
);

Однако, это возвращает сообщения на голландском языке. Можно ли вместо этого получать сообщения об ошибках на английском языке?

Ответы [ 3 ]

3 голосов
/ 21 сентября 2009

Боюсь, что нет! AFAIK, английские ресурсы вообще недоступны в других международных выпусках ОС.

0 голосов
/ 02 мая 2017

Согласно этому ответу вы можете указать:

MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US)

для 4-го параметра FormatMessage.

Или, используя другой ответ , вы можете установить язык интерфейса пользователя по умолчанию для текущего потока через SetThreadUILanguage.

0 голосов
/ 21 сентября 2009

Единственный способ, которым я знаю, - это изменить настроенный язык операционной системы, который изменяет весь текст на указанный язык.

Я не уверен, возможно ли это в Vista или 7, если у вас нет версии Ultimate, которая содержит 33-34 дополнительных языков для загрузки из Центра обновления Windows.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...