zlib - Packen/Entpacken

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
lucster
Beiträge: 30
Registriert: Mi 6. Aug 2008, 14:26
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

zlib - Packen/Entpacken

Beitrag von lucster »

Hey Leute,

ich hab ne Prob mitm entpacken. Ich habe versucht die zip libary zu nutzen, aber so recht komm ich nich klar.
Ist die libary nicht die gleiche, wie die zlib von Delphi?

Ich habe versucht diesen Code auszuführen:

Code: Alles auswählen

procedure Decompress(InputFileName, OutputFileName: string);
var InputStream, OutputStream: TFileStream;
  DeCompressionStream: ZLib.TDeCompressionStream;
  Buf: array[0..4095] of Byte;
  Count: Integer;
begin
  InputStream:=TFileStream.Create(InputFileName, fmOpenRead);
  try
    OutputStream:=TFileStream.Create(OutputFileName, fmCreate);
    try
      DecompressionStream := TDecompressionStream.Create(InputStream);
      try
        while true do
        begin
          Count := DecompressionStream.Read(Buf[0], SizeOf(Buf));
          if Count = 0 then
            break
          else
            OutputStream.Write(Buf[0], Count);
        end;
      finally
        DecompressionStream.Free;
      end;
    finally
      OutputStream.Free;
    end;
  finally
    InputStream.Free;
  end;
end;
Bei der Variablendeklaration gibt es ein Problem: "DeCompressionStream: ZLib.TDeCompressionStream;"
Das Objekt/der Identifzierer "ZLib.TDeCompressionStream" wird nicht gefunden. Laut Forumeinträgen (deplhi-praxis.net) funktioniert der Code unter Delphi.

Benutzeravatar
theo
Beiträge: 10869
Registriert: Mo 11. Sep 2006, 19:01

Re: zlib - Packen/Entpacken

Beitrag von theo »

uses {$IFDEF FPC}zstream{$ELSE}ZLib{$ENDIF}

lucster
Beiträge: 30
Registriert: Mi 6. Aug 2008, 14:26
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Re: zlib - Packen/Entpacken

Beitrag von lucster »

fast:

erst wurde "TDeCompressionStream" nicht gefunden. mit deiner hilfe wird nun "zlib" nicht mehr gefunden :shock:

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Re: zlib - Packen/Entpacken

Beitrag von monta »

//...zlibbar und zlib sind ja zwei verschiedene Dinge...hatte ich übersehen.
Johannes

Benutzeravatar
theo
Beiträge: 10869
Registriert: Mo 11. Sep 2006, 19:01

Re: zlib - Packen/Entpacken

Beitrag von theo »

lucster hat geschrieben:fast:

erst wurde "TDeCompressionStream" nicht gefunden. mit deiner hilfe wird nun "zlib" nicht mehr gefunden :shock:
Ist ja logisch, wie soll er denn ZLib.TDeCompressionStream; finden wenn die unit zlib gar nicht eingebunden ist?

also:
DeCompressionStream: TDeCompressionStream;
reicht.

Antworten