Re: [start][start] Output with console encoding
"Anatoly Lyutin" <vostok(a)etersoft.ru> wrote:
@@ -33,7 +33,20 @@ static void output(const char *message) { DWORD count; - WriteFile(GetStdHandle(STD_OUTPUT_HANDLE), message, strlen(message), &count, NULL); + WCHAR *bufW; + char *bufC; + int len = strlen(message); + bufW = calloc(len+1,sizeof(WCHAR)); + bufC = calloc(len+1,sizeof(CHAR));
Please do not use calloc/malloc calls in the Wine code, use win32 API HeapAlloc instead.
+ MultiByteToWideChar( CP_ACP, 0, message, len, bufW, len ); + WideCharToMultiByte( GetConsoleOutputCP(), 0, bufW, len, bufC, len, NULL, NULL ); + bufC[len] = '\0';
Please refer to other parts of Wine code how to properly allocate space for this kind of a conversion. -- Dmitry.
participants (1)
-
Dmitry Timoshkov