Forum: Win32/Win64 API (native code)
Delphi
by SirThornberry,
31. Okt 2005
genau so ist es. Wenn ein StringEllement eine größe von 255 Bytes hat so kannst du mit multiplication der Anzahl die gesamtgröße herausfinden. und wie du selbst schon geschrieben hast ist die größe eines Strings bei "" gleich 256 Bytes. Aber sowas sollte man am besten mit "SizeOf" abfragen und nicht festen in den Quellcode tippen.
Forum: Win32/Win64 API (native code)
Delphi
by SirThornberry,
31. Okt 2005
@Flocke: In dein meisten fällen mag dies funktionieren, allerdings gibt es auch fälle in denen das Ergebnis auf der Empfängerseite dann verfälscht ist. Hier ein Beispiel wo es nicht funktioniert:
var LStrList: TStringlist;
begin
LStrList := TStringList.Create;
LStrList.Add('zeile1-Teil1' + #13#10 + 'zeile1-Teil2');
LStrList.Add('zeile2');
auf der Empfängerseite wären das dann aber...
Forum: Win32/Win64 API (native code)
Delphi
by SirThornberry,
31. Okt 2005
ein "Array of String" geht auch nicht da es ja dann ein dynamiches Array ist. Und ein dynamisches Array ist auch ein pointer. ein "Array of string" geht jedoch da es staatich ist und somit nicht dynamisch speicher angefodert wird.
Da es bei einem Dynamischen Array aber wie bei einem String ist (ist ein Zeiger der auf die zusammenhängenden Datein zeigt), kannst du auch einfach den Bereich...
Forum: Win32/Win64 API (native code)
Delphi
by SirThornberry,
31. Okt 2005
@Nogge: In deinem Record stehen NICHT die vollständigen Daten. Du hast dort Maximal eine Varible vom Typ TStringlist was wiederum nur ein Pointer ist auf die Instanz.