Функция преобразование char * в UTF8String в DLL
Модератор: Модераторы
- Снег Север
- долгожитель
- Сообщения: 3067
- Зарегистрирован: 27.11.2007 15:14:47
- Контактная информация:
Branntweiner, а почему бы вам не спросить на форуме разработчика - http://zengl.org/forum/
-
Branntweiner
- незнакомец
- Сообщения: 8
- Зарегистрирован: 09.08.2015 19:57:27
Снег Север писал(а):Branntweiner, а почему бы вам не спросить на форуме разработчика - http://zengl.org/forum/
Писал, но сейчас разработка остановлена, и не планируется его портирование на С. В любом случае, материал нашелся, поэтому буду разбираться что к чему.
См. как образец, только кодировка другой (переделай для фпц >= 2.7):
Код: Выделить всё
function PCharToString(P: PAnsiChar): AnsiString;
var
i: integer;
p2: PAnsiChar;
begin
if not Assigned(p) then Result:=''
else try
p2:=p;
i:=0;
While p2^ <> #0 do begin
inc(p2);
inc(i);
end;
SetLength(Result, i);
Move(p^, Result[1], i);
except raise Exception.Create('AV in PCharToString() : ' + inttohex(ptruint(p),8) + 'h, count = '+ IntToStr(i)) end;
end;