Страница 1 из 1

ANSI при переходе от Lazarus 1.2.4 к 1.6.4

СообщениеДобавлено: 27.04.2017 18:49:04
DropSoft
В Lazarus 1.2.4 использовал

Код: Выделить всё
Function MsgBox(H:HWND;s1,s2:shortstring;d1:dword):integer;
begin
  Result := MessageBox(H, PAnsiChar(UTF8ToAnsi(s1)), PAnsiChar(UTF8ToAnsi(s2)), d1);
end;

После установки Lazarus 1.6.4 вместо русских букв стали кракозябры.
Как это можно исправить, в чем дело?

Re: ANSI при переходе от Lazarus 1.2.4 к 1.6.4

СообщениеДобавлено: 27.04.2017 18:53:14
runewalsh
Выставь кодировку исходника («UTF-8 с BOM») и убери касты к ANSI (вроде как это развернётся в MessageBoxW), либо используй MessageBoxA.

Re: ANSI при переходе от Lazarus 1.2.4 к 1.6.4

СообщениеДобавлено: 27.04.2017 19:47:53
DropSoft
runewalsh, спасибо.

Re: ANSI при переходе от Lazarus 1.2.4 к 1.6.4

СообщениеДобавлено: 27.04.2017 19:58:26
Дож
«UTF-8 с BOM» -- зло :)