Dúvida para compactar arquivos
Olá pessoal, estou encontando dificuldades para utilizar a ZLib no Delphi 7, peguei um exemplo na internet para compactar arquivos
Mas dá o erro Undeclared Identifier:´TCompressionStream´, aí não compila, já declarei a ZLib no Uses da Unit, mas dá esse erro, o que mais eu tenho que fazer para utilizar a ZLib para compactar e descompactar no Delphi 7?
Se alguém puder me ajudar eu agradeço!!
procedure TForm1.CompressFiles(Files: TStrings; const Filename: String); var infile, outfile, tmpFile : TFileStream; compr : TCompressionStream; i,l : Integer; s : String; begin if Files.Count > 0 then begin outFile := TFileStream.Create(Filename,fmCreate); try l := Files.Count; outfile.Write(l,SizeOf(l)); for i := 0 to Files.Count-1 do begin infile := TFileStream.Create(Files[i],fmOpenRead); try s := ExtractFilename(Files[i]); l := Length(s); outfile.Write(l,SizeOf(l)); outfile.Write(s[1],l); l := infile.Size; outfile.Write(l,SizeOf(l)); tmpFile := TFileStream.Create(´tmp´,fmCreate); compr := TCompressionStream.Create(clMax,tmpfile); try compr.CopyFrom(infile,l); finally compr.Free; tmpFile.Free; end; tmpFile := TFileStream.Create(´tmp´,fmOpenRead); try outfile.CopyFrom(tmpFile,0); finally tmpFile.Free; end; finally infile.Free; end; end; finally outfile.Free; end; DeleteFile(´tmp´); end; end;
Mas dá o erro Undeclared Identifier:´TCompressionStream´, aí não compila, já declarei a ZLib no Uses da Unit, mas dá esse erro, o que mais eu tenho que fazer para utilizar a ZLib para compactar e descompactar no Delphi 7?
Se alguém puder me ajudar eu agradeço!!
Taraciuk
Curtidas 0
Respostas
Onjahyr
14/02/2008
[b:558986f354]TCompressionStream[/b:558986f354]
Creio que seja uma classe de um componente que faltou instalar... As vezes vc tem que criar o pacote (package). Verifique junto do arquivo ZLib se vem outros arquivos com a extensão [b:558986f354].DCR[/b:558986f354], se tiver é que falta instalar....
Procure na internet o programa de instalação do componente [b:558986f354]Zipmaster[/b:558986f354], é um pacote completo para se usar compactação, vem com vários exemplos prontos, ele é freeware e possui os fontes. Genial, eu uso ele!
Creio que seja uma classe de um componente que faltou instalar... As vezes vc tem que criar o pacote (package). Verifique junto do arquivo ZLib se vem outros arquivos com a extensão [b:558986f354].DCR[/b:558986f354], se tiver é que falta instalar....
Procure na internet o programa de instalação do componente [b:558986f354]Zipmaster[/b:558986f354], é um pacote completo para se usar compactação, vem com vários exemplos prontos, ele é freeware e possui os fontes. Genial, eu uso ele!
GOSTEI 0
Paullsoftware
14/02/2008
[b:c88339ab17]TCompressionStream[/b:c88339ab17]
Creio que seja uma classe de um componente que faltou instalar... As vezes vc tem que criar o pacote (package). Verifique junto do arquivo ZLib se vem outros arquivos com a extensão [b:c88339ab17].DCR[/b:c88339ab17], se tiver é que falta instalar....
Procure na internet o programa de instalação do componente [b:c88339ab17]Zipmaster[/b:c88339ab17], é um pacote completo para se usar compactação, vem com vários exemplos prontos, ele é freeware e possui os fontes. Genial, eu uso ele!
com certeza o ZipMaster é o melhor compactador que já usei... você pode baixar ele daqui[url=http://www.delphizip.org/]Site do Componente[/url]
[url=http://v179.delphizip.org/index.html]Se preferir pode ir direto a página com a lista das versões[/url] ou efetuar o [url=http://v179.delphizip.org/files/zm1790802.zip]Download da Versão v1.79[/url]
O único inconveniente é ter que carregar junto a sua aplicação as dll´s do mesmo, mais é raro ter uma aplicação que não precise de dll hoje em dia :wink:
GOSTEI 0
Onjahyr
14/02/2008
a DLL é apenas uma: [b:e7e128aaa6]DelZip179.dll[/b:e7e128aaa6] e voce poderá jogar dentro da pasta [b:e7e128aaa6]System32[/b:e7e128aaa6] e nem se preocupar mais com isso, tanto no seu computador (que já deve estar após a instalação) quanto a do computador que tem o seu programa.
Quanto ao uso de DLL, todos os compactadores que conheço (for Windows) tem DLL e como o companheiro disse, hoje em dia programa sem DLL é difícil, eles fazem parte do nosso dia-a-dia (ainda bem, imagine o tamanho dos aplicativos se não fossem eles) :lol:
O bom, é que este componente aceita não só a extensão .zip como outras...
Blz
Quanto ao uso de DLL, todos os compactadores que conheço (for Windows) tem DLL e como o companheiro disse, hoje em dia programa sem DLL é difícil, eles fazem parte do nosso dia-a-dia (ainda bem, imagine o tamanho dos aplicativos se não fossem eles) :lol:
O bom, é que este componente aceita não só a extensão .zip como outras...
Blz
GOSTEI 0
Paullsoftware
14/02/2008
a DLL é apenas uma: [b:8a077e0c23]DelZip179.dll[/b:8a077e0c23] e voce poderá jogar dentro da pasta [b:8a077e0c23]System32[/b:8a077e0c23] e nem se preocupar mais com isso, tanto no seu computador (que já deve estar após a instalação) quanto a do computador que tem o seu programa.
Quanto ao uso de DLL, todos os compactadores que conheço (for Windows) tem DLL e como o companheiro disse, hoje em dia programa sem DLL é difícil, eles fazem parte do nosso dia-a-dia (ainda bem, imagine o tamanho dos aplicativos se não fossem eles) :lol:
O bom, é que este componente aceita não só a extensão .zip como outras...
Blz
Aham.... Eu sei, uso ele e como eu disse é o melhor que ví até hoje!!!GOSTEI 0