Hallo Luckie,
dann mal viel Spass beim Suchen
. Habe gerade ein kleines Testprojekt zusammengezimmert, sollte aber für einen Einblick genügen.
Edit: Update der Compremierungsroutine (Position := 0 vergessen)
Delphi-Quellcode:
procedure TForm2.Compress;
var
zc: TZCompressionStream;
ms1: TMemoryStream;
buff: array [0..2048] of byte;
len: integer;
begin
ms1 := TMemoryStream.Create;
try
zc := TZCompressionStream.Create(ms1, zcMax);
try
ms.Position := 0;
repeat
len := ms.Read(buff, 2048);
zc.Write(buff, len);
until len <> 2048;
lRateOfCompression.Caption := Format('%.3f', [zc.CompressionRate]);
ms.Position := 0;
ms.CopyFrom(ms1, ms1.Size);
finally
zc.free;
end;
finally
ms1.Free;
end;
end;
Grüße
das GreenHorn