Fórum Zipar sem ZipMaster #276230

08/04/2005

0

Alguem pode me dizer algum outro componente q pra compactar arquivos q não seja o ZipMaster???
Pq esse precisa das dll´s e queria uma q não tivesse necessitasse de nenhum outro arquivo...

Se alguem souber



Alan Vieceli


Alansvieceli

Alansvieceli

Responder

Posts

08/04/2005

Nildo

Olha, talvez meu artigo o ajude: http://www.clubedelphi.net/artigos/U_DLLnoDelphi.asp


Responder

Gostei + 0

08/04/2005

Nerdex

Esse é meu artigo Nildo!... vê se gosta:

Não me perguntem o porquê, mas tenho um certo facínio por compressão de dados, sendo que já testei vários componentes. Hoje não uso nenhum deles e sim um pequeníssimo arquivo da própria RTL do Delphi chamado zLib.pas. Fiquei surpreso com os resultados de eficiência, performance e taxas de compressão obtidos nos meus testes, onde equipara-se ao uso do compressor UPX.exe (algorítmo de compressão NRV criado por Markus F.X.J. Oberhumer e László Molnár). Bem... agora vamos ver como é fácil, simples e leve sua implementação usando a zLib: Insira zLib no Uses da sua Unit... procedure TForm1.CompressãoClick(Sender: TObject); var FileIni, FileOut: TFileStream; Zip: TCompressionStream; begin FileIni:=TFileStream.Create(´C:\pasta\...arquivo a ser comprimido...´, fmOpenRead and fmShareExclusive); FileOut:=TFileStream.Create(´C:\pasta\...arquivo comprimido...´, fmCreate or fmShareExclusive); Zip:=TCompressionStream.Create(clMax, FileOut); Zip.CopyFrom(FileIni, FileIni.Size); Zip.Free; FileOut.Free; FileIni.Free; end; procedure TForm1.DescompressãoClick(Sender: TObject); var FileIni, FileOut: TFileStream; DeZip: TDecompressionStream; i: Integer; Buf: array[0..1023]of Byte; begin FileIni:=TFileStream.Create(´C:\pasta\...arquivo comprimido...´, fmOpenRead and fmShareExclusive); FileOut:=TFileStream.Create(´C:\pasta\...arquivo descomprimido...´, fmCreate or fmShareExclusive); DeZip:=TDecompressionStream.Create(FileIni); repeat i:=DeZip.Read(Buf, SizeOf(Buf)); if i <> 0 then FileOut.Write(Buf, i); until i <= 0; DeZip.Free; FileOut.Free; FileIni.Free; end; Dependendo da tua necessidade... poderá adaptá-lo para que execute a compressão e descompressão de pastas inteiras e também que realize um teste de verificação na integridade dos arquivos com o auxílio de uma tabela CRC 32. Ricardo Bastos Campos Tec em Proc de Dados e Acad. em Sist de Informação Santa Maria - RS ricbcampos@ubbi.com.br



Responder

Gostei + 0

09/04/2005

Lucaniasalvatore

Bom dia, alansvieceli.

Vc não precisa usar necessariamente as dll´s. O ZipMaster 1.78 vem com um mini-aplicativo ´MAKEdllRes´ para vc criar um arquivo ´ResDll.res´ das dll´s.

Dessa forma vc apenas inclui:
{$R resdlls.res}

e voilá...

o endereço: [url]http://www.delphizip.net/[/url]

o aplicativo ficará na subpasta Tools.

boa programação

Lucania Salvatore


Responder

Gostei + 0

09/04/2005

Nildo

Esse é meu artigo Nildo!... vê se gosta


Muito bom! Parabens!

Dois artigos diferentes para apenas uma solução! Eeeeta esse forum ta ficando cada vez com maior qualidade!


Responder

Gostei + 0

11/04/2005

Madrick

De uma olhada ai...
http://forum.devmedia.com.br/viewtopic.php?t=60429&highlight=zlib&sid=4a78b63e9ac7fb3bfe1eb18a558cc86f


Responder

Gostei + 0

20/04/2005

Rfpsatin

Salve Gente...

como faço pra descompactar um arquivo(usando zLib.pas) compactado pelo winzip, p.ex.?

ta dando erro, acusa erro!

valeu


Responder

Gostei + 0

20/04/2005

Gandalf.nho

Salve Gente... como faço pra descompactar um arquivo(usando zLib.pas) compactado pelo winzip, p.ex.? ta dando erro, acusa erro! valeu


Pelo que sei zLib não permite descompactar arquivos padrão ZIP. Vc terá que usar um padrão compatível com ZIP


Responder

Gostei + 0

20/04/2005

Rfpsatin

[quote:8d3e33e815=´rfpsatin´]Salve Gente... como faço pra descompactar um arquivo(usando zLib.pas) compactado pelo winzip, p.ex.? ta dando erro, acusa erro! valeu


Pelo que sei zLib não permite descompactar arquivos padrão ZIP. Vc terá que usar um padrão compatível com ZIP[/quote:8d3e33e815]

Pra mim isso é um problema, pq nao posso agregar um componente neste projeto!

Vc ou alguém tem alguma rotina, unit, algo simples que pudesse disponibiliar sem ser um componente?

muito obrigado!


Responder

Gostei + 0

20/04/2005

Nildo

Pra mim isso é um problema, pq nao posso agregar um componente neste projeto!


Qual a diferença de agregar um componente e uma Unit? Você pode colocar as Units do ZipMaster junto com seu projeto, mas sem ter que instalar o TZipMaster, logo você os cria dinâmicamente


Responder

Gostei + 0

20/04/2005

Rfpsatin

[quote:dc1bba7cd5=´rfpsatin´]Pra mim isso é um problema, pq nao posso agregar um componente neste projeto!


Qual a diferença de agregar um componente e uma Unit? Você pode colocar as Units do ZipMaster junto com seu projeto, mas sem ter que instalar o TZipMaster, logo você os cria dinâmicamente[/quote:dc1bba7cd5]


legal, legal, legal....

são muitas units?

vc pode me mandar!

rfpsatin@yahoo.com.br


Responder

Gostei + 0

20/04/2005

Nildo

Baixa deste site: http://www.delphizip.net/
Joga as units dentro da pasta do seu projeto (de preferencia), vincula as units ao seu projeto, declara elas no seu Uses e crie-os dinamicamente.


Responder

Gostei + 0

20/04/2005

Rfpsatin

uia ki ki eu achei :shock: :shock: :shock: :shock:

http://www.delphi32.com/vcl/3173/download,xid,3173.asp


gostei muito.


Responder

Gostei + 0

20/04/2005

Dpinho

Quero utilizar a zLib, ate ja testei e gostei da taxa de compactação e a facilidade de uso, Gostaria de saber se tem jeito de compactar todos os arquivos de uma pasta, utilizando o path dela ou usar mascaras *.* e ao descompactar retonar para o path original


Responder

Gostei + 0

21/04/2005

Nerdex

Quero utilizar a zLib, ate ja testei e gostei da taxa de compactação e a facilidade de uso, Gostaria de saber se tem jeito de compactar todos os arquivos de uma pasta, utilizando o path dela ou usar mascaras *.* e ao descompactar retonar para o path original


[list:4e27b73f93]Sim... naturalmente existe a possibilidade... para isto veja [url=http://cc.borland.com/ccweb.exe/listing?id=21894]este arquivo aqui do Code Central da Borland.[/url]

[u:4e27b73f93]Nome do arquivo[/u:4e27b73f93]:
A single unit adding Zip file handling to Delphi 1.1

[]´s[/list:u:4e27b73f93]


Responder

Gostei + 0

11/07/2005

Eniorm

Ressucitando esse post......

Tem como limitar o tamanho do arquivo compactado usando o zLib

Tipo, tenho um arquivo que, após compactado terá 5 megas, quero que o processo de compactação gere 5 arquivos com 1 mega cada.

Tem como?


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar