Hi,
ich habe mal wieder ein Problem mit Pointern
In eine Funktion werden mehrere string Parameter übergeben, wovon einer dann zu einem PChar umgewandelt werden muss.
Die Funktion sieht in etwa so aus:
Delphi-Quellcode:
function Test(const proc: Pointer; const a, b, c, s: string): einRecord;
var
PS: PChar;
begin
if s <> '' then
PS := PChar(s)
else
PS := nil;
Showmessage(IntToStr(Length(PS)));
end;
Das ganze spielt sich in einer
DLL ab, diese Funktion wird jedoch nur intern verwendet. Nun ist mein Problem, dass die Länge immer 0 ist (obwohl sie in Wahrheit 49 oder so ist), wenn s Binary-Material enthält, welches am Anfang 5x #0 hat. Liegt das daran, dass die mit #0 abgeschlossen werden?
[edit=mkinzler]Code-Tag durch Delphi-Tag ersetzt Mfg, mkinzler[/edit]