How do I get error messages in English on a foreign version of Windows?
I am using Dutch version of Windows and I have this piece of code:
::FormatMessage
(
FORMAT_MESSAGE_ALLOCATE_BUFFER
| FORMAT_MESSAGE_FROM_SYSTEM
| FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,
lastError,
MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT),
(LPTSTR)&lpMsgBuf,
0,
NULL
);
However, this returns messages in Dutch. Is it possible to get error messages in English?
+2
source to share
3 answers
The only way I know of is to change the operating system setting language, which changes all text to the specified language.
I'm not sure if this is possible in Vista or 7 unless you have the Ultimate version which contains 33-34 additional languages as downloads from Windows Update.
0
source to share
According to this answer, you can specify:
MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US)
for the 4th parameter FormatMessage
.
Or using another answer , you can set the default user interface language for the current thread through SetThreadUILanguage
.
0
source to share