Descompactar com ZipMaster
23/08/2017
0
Boa tarde Amigos, Estou fazendo testes no ZipMaster e até onde eu teste a parte de compactar está show de bola, porém quando vou extrair usando ele os aquivos ficam tudo na mesma pasta, não respeita as subpastas compactadas no arquivo gerado por ele, sendo que por outro aplicativo tipo 7z ou Winrar o arquivo zip mesmo sendo gerado pelo ZipMaster são descompactados e com suas respectivas subpastas.
Alguém tem a solução de descompactar usando o ZipMaster do jeito certo com as subpastas contidas no arquivo ZIP ?
Agradeço desde já amigos.
Alguém tem a solução de descompactar usando o ZipMaster do jeito certo com as subpastas contidas no arquivo ZIP ?
Agradeço desde já amigos.
Adriano Pratti
Curtir tópico
+ 0
Responder
Post mais votado
23/08/2017
As novas versões do Delphi (creio que apartir do XE2) dá suporte a biblioteca Zip nativa (sem componentes).
Declare [b]System.Zip[/b] ou apenas [b]Zip[/b] na uses do form.
[b]Compactar[/b]
[b]Descompactar[/b]
Declare [b]System.Zip[/b] ou apenas [b]Zip[/b] na uses do form.
[b]Compactar[/b]
function Zip(Files: TStrings; ZipName: String): boolean; // Compacta os arquivos var I: integer; Zipper: TZipFile; begin Zipper := TZipFile.Create(); try Zipper.Open(ZipName, zmWrite); for I := 0 to Files.Count - 1 do begin if FileExists(Files[I]) then Zipper.Add(Files[I]); end; Zipper.Close; finally FreeAndNil(Zipper); end; Result := True; end;
[b]Descompactar[/b]
function UnZip(ZipName: string; Destination: string): boolean; // Descompacta no Diretorio informado var UnZipper: TZipFile; begin UnZipper := TZipFile.Create(); try UnZipper.Open(ZipName, zmRead); UnZipper.ExtractAll(Destination); UnZipper.Close; finally FreeAndNil(UnZipper); end; Result := True; end;
Natanael Ferreira
Responder
Mais Posts
23/08/2017
Adriano Pratti
Valeu Natanael Ferreira, mas eu estou usando ainda o Delphi 7 ... tenho muitos projetos informais em uso com ele e também o Delphi 3 ... mas o meu foco é tentar solucionar essa questão no 7 mesmo, te agradeço pela atenção amigo. Mesmo assim vou guardar a escrita que me passou para uso no futuro. Grato Natanael Ferreira!
Responder
Clique aqui para fazer login e interagir na Comunidade :)