Zlib...

0
uses ..., Zlib;

...

procedure DecompressFiles(const Filename, DestDirectory : String);
var
  dest,s : String;
  decompr : TDecompressionStream; 
  infile, outfile : TFilestream; 
  i,l,c : Integer;
begin 
  // IncludeTrailingPathDelimiter (D6/D7 only) 
  dest := IncludeTrailingPathDelimiter(DestDirectory);

  infile := TFileStream.Create(Filename,fmOpenRead); 
  try
    { number of files } 
    infile.Read(c,SizeOf(c)); 
    for i := 1 to c do
    begin
      { read filename }
      infile.Read(l,SizeOf(l)); 
      SetLength(s,l);
      infile.Read(s[1],l); 
      { read filesize }
      infile.Read(l,SizeOf(l));
      { decompress the files and store it }
      s := dest+s; //include the path
      outfile := TFileStream.Create(s,fmCreate);
      decompr := TDecompressionStream.Create(infile);
      try
        outfile.CopyFrom(decompr,l);
      finally
        outfile.Free;
        decompr.Free;
      end;
    end;
  finally
    infile.Free;
  end;
end;

Mam Delphi 7, czemu dostaję błąd:
[Error] Unit1.pas(28): Undeclared identifier: 'TCompressionStream'

?

0

TDecompressionStream jest zdefiniowany w ZLIB.pas.
Jeśli Delphi akceptuje uses ... ZLIB; to chyba masz jakiś lewy ZLIB.pas !

1 użytkowników online, w tym zalogowanych: 0, gości: 1