У меня есть такая функция:
BOOL WINAPI MyFunction(HDC hdc, LPCWSTR text, UINT cbCount){
char AnsiBuffer[255];
int written = WideCharToMultiByte(CP_ACP, 0, text, cbCount, AnsiBuffer , 0, NULL, NULL);
if(written > -1) AnsiBuffer[written] = '\0';
if(written>0){
ofstream myfile;
myfile.open ("C:\\example.txt", ios::app);
myfile.write(AnsiBuffer, sizeof(AnsiBuffer));
myfile.write("\n", 1);
myfile.close();
}
....
Когда я отображаю входной текст LPCWSTR с помощью MessageBoxW (), текст отображается нормально. Когда я пытаюсь преобразовать его в многобайтовый код, возвращаемое значение выглядит нормально (например, 22, 45 и т. Д.), Но в результате получаются строки из тарабарщины (например, ÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌ). Предложения?