Japp, ist mir später auch aufgegangen, aber da wars schon so implementiert, also habe ich es so gelassen.
Wenn wir schon dabei sind, sollte LoadStrFromStream dann besser eine Funktion sein, damit man in einem Schritt auslesen kann und nicht den Umweg über eine String-Variable gehen muss:
Delphi-Quellcode:
function LoadStrFromStream(const Stream: TStream): String;
var Len: Word;
begin
Stream.ReadBuffer(Len, SizeOf(Len));
SetLength(Result, Len);
if Len > 0 then
Stream.ReadBuffer(Pointer(Result)^, Len);
end;
PS: Vielleicht sollte man noch erwähnen, daß diese Routinen die Länge der zu speichernden Strings auf 2^16 Byte beschränkt, da die Länge per Word-Variable definiert ist. Um das auf 2^32 Byte zu erhöhen, einfach aus "var Len:Word" "var Len:Cardinal" machen.
Cu,
Udontknow