5 #include "Windows/Error.h"
\r
7 #include "Common/StringConvert.h"
\r
14 namespace NWindows {
\r
17 bool MyFormatMessage(DWORD messageID, CSysString &message)
\r
20 if (::FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
\r
21 FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
\r
22 NULL,messageID, 0, (LPTSTR) &msgBuf,0, NULL) == 0)
\r
24 message = (LPCTSTR)msgBuf;
\r
25 ::LocalFree(msgBuf);
\r
30 bool MyFormatMessage(DWORD messageID, UString &message)
\r
35 if (::FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER |
\r
36 FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
\r
37 NULL, messageID, 0, (LPWSTR) &msgBuf, 0, NULL) == 0)
\r
39 message = (LPCWSTR)msgBuf;
\r
40 ::LocalFree(msgBuf);
\r
43 CSysString messageSys;
\r
44 bool result = MyFormatMessage(messageID, messageSys);
\r
45 message = GetUnicodeString(messageSys);
\r