Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by GreenHorn3600,
16. Aug 2009
Hallo Wissende,
kann man diesen Code noch optimieren? Geht darum, dass der Stream aStream komprimiert wird und der komprimierte anschliessend wieder im aStream zurückgegeben wird.
procedure CompressStream(aStream: TStream);
var
zc: TZCompressionStream;
ms: TMemoryStream;
begin
ms := TMemoryStream.Create;
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by GreenHorn3600,
16. Aug 2009
Hallo alzaimar,
dank Dir. Ich bin ja auch nur ein GreenHorn. Hab aber noch ein paar fragen dazu. Mein Stream (TStream) kennt kein .Clear wie kann man das dennoch wieder säubern?
Andere Frage, beim Stream schreibst Du
zc.CopyFrom(ms, 0)
Dies ist definiert als:
function TStream.CopyFrom(Source: TStream; Count: Int64): Int64;
...
begin
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by GreenHorn3600,
16. Aug 2009
Hallo Dax, Jänicke,
mhhh, ist nicht wirklich hilfreich. Wie ihr mit einem Blick auf den Code erkennen könnt, wird der Ausgabestream neu (also leer) erzeugt. Er wird ja auch prima gefüllt. Nur, ist dann der Inhalt reichlich unkomprimiert... Dies war ja auch meine Kritik dran, daher die Frage nach einer anderen, welche es besser kann. Übrigens, ein kleines Beispielprojekt ist angehangen, nur die...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by GreenHorn3600,
16. Aug 2009
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) procedure TForm2.Compress;
var
zc: TZCompressionStream;
ms1: TMemoryStream;
buff: array of byte;
len: integer;