Moin Chewie,
wenn ich das richtig sehe, dann hat OutputStream die Grösse 0, denn er wird nur angelegt, aber nichts da reingeschrieben, somit wird die Länge von buf auf 0 gesetzt, und die Schleife läuft von 0 bis -1, wird also übersprungen.

Zitat von
Chewie:
Da die komprimierten Daten binär sind, kann ich zum Lesen aus dem Memory-Stream keine Strings benutzen.
doch:
Delphi-Quellcode:
var
sBuf : string;
msIN : TMemoryStream;
begin
msIN := TMemoryStream.Create;
try
msIN.LoadFromFile('IrgendeineDatei');
SetLength(sBuf,msIN.Size);
msIN.Read(sBuf[1],length(sBuf));
finally
FreeAndNil(msIN);
end;
end;