Página 1 de 3
Dúvida HB_Unzipfile()
Enviado: 30 Nov 2017 18:38
por Softwhouse
Tenho uma rotina de backup que grava a pasta e as subpastas com seus arquivos. Na rotina de recuperação, com HB_Unzipfile, só recupera se a subpasta existir, se por acaso alguma pasta tenha sido excluída não será recriada, só recupera os arquivos nas pastas existentes. Está correto isso ou existe algum parâmetro que desconheço para que isso funcione? Obrigado.
Dúvida HB_Unzipfile()
Enviado: 30 Nov 2017 20:26
por Itamar M. Lins Jr.
Ola!
Cadê a sintaxe dela ? Como vc está usando ?
Saudações,
Itamar M. Lins Jr.
Dúvida HB_Unzipfile()
Enviado: 30 Nov 2017 20:31
por Itamar M. Lins Jr.
Ola!
Procure na fonte.
A fonte é esta aqui:
https://harbour.github.io/doc/hbziparc. ... _unzipfile
Nos docs oficiais do Harbour.
Espero que funcione.
Saudações,
Itamar M. Lins Jr.
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 10:43
por Softwhouse
Olá,
Estou usando assim:
If Hb_UnzipFile('cArquivo.zip', ,.T., ,'C:\', aExtract')
Tentei outras maneiras conforme o manual e não funcionou.
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 10:57
por Kapiaba
Olá, veja se ajuda, fontes e executável anexos. Abs.
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 11:00
por Kapiaba
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 11:03
por gilbertosilverio
Ola,
Se ver teu código completo fica difícil, mais você esta usando isto:
aExtract := hb_GetFilesInZip( cZip )
Acho que e aqui que ele pega as pastas do arquivo zipado...
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 11:37
por Softwhouse
Kapiaba,
Testei seu demo tentando descompactar o zip gerado pelo meu sistema, não foram geradas nehuma pasta, descompactou os arquivos em C:\
Gilberto
Essa linha existe sim no sistema.
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 11:50
por Kapiaba
Fernando, veja onde está escrito:
"Carpeta(Pasta) destino para restaurar la cópia" - Troque(cambie) para onde deseja fazer a restauração. Abs.
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 13:54
por Itamar M. Lins Jr.
Ola!
If Hb_UnzipFile('cArquivo.zip', ,.T., ,'C:\', aExtract')
Tentei outras maneiras conforme o manual e não funcionou.
Muito importante informar. Qual é a versão do seu Harbour ?
Monta um exemplo enxuto. Precisamos mandar esse bug para o grupo de desenvolvedores.
Saudações,
Itamar M. Lins Jr.
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 14:00
por Itamar M. Lins Jr.
Ola!
Aqui tudo é de gota em gota.
Cadê seu fonte com a função hb_zipfile ?
Quando pedir ajuda, se possível já criar a função demonstrando o problema, e a versão do harbour.
Código: Selecionar todos
Syntax
hb_ZipFile( <cFile>, <cFileToCompress> | <aFiles>, <nLevel>,
<bBlock>, <lOverWrite>, <cPassword>, <lWithPath>, <lWithDrive>,
<pFileProgress> ) → lCompress
lWithPath Toggle to store the path or not
Saudações,
Itamar M. Lins Jr.
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 14:02
por Softwhouse
Descobri. Compilei com o Harbour 3.0 e funcionou perfeitamente, o problema está no harbour 3.2. Baixei a versão nightly e o problema persiste.
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 14:05
por Softwhouse
Fiz isso fora do sistema para testar:
Function Main()
aExtract:=Hb_GetFilesInZip('171130.zip')
If Hb_UnZipFile('171130.zip',,.T.,,'C:\',aExtract)
@ 10,20 Say 'Sucesso...'
EndIf
Return(.T.)
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 14:08
por Itamar M. Lins Jr.
Ola!
Cadê a sua sintaxe de como usa a hb_zipfile ?
Saudações,
Itamar M. Lins Jr.
Dúvida HB_Unzipfile()
Enviado: 01 Dez 2017 14:16
por Softwhouse
Código: Selecionar todos
#include 'inkey.ch'
Function Backup(cOperacao)
Local cColor, cTela, aDir, aRay, nChoice, aExtract, cPasta
Local cOrigem:='C:\Estoques\Dados\'
Local cDestino:='C:\Backups\Estoques\'
Local cArqZip:=SubStr(Dtos(Date()),3,6) + StrTran(Time(),':','')
HB_DirBuild('C:\Backups\Estoques')
If cOperacao=='Backup'
If Confirma('Confirma o in¡cio do backup?')==1
If LastKey()==K_ESC
Return(.T.)
Else
MensagemRun('Aguarde, efetuando backup...','Begin')
aRay:={}
aDir:=Directory(cOrigem + '*.*', 'D')
cPasta:=Left(cOrigem, Rat('\',cOrigem))
For i = 1 To Len(aDir)
AADD(aRay, cPasta + aDir[i,1] + '\*.DBF')
AADD(aRay, cPasta + aDir[i,1] + '\*.CDX')
Next
HB_ZipFile(cDestino + cArqZip, aRay, 9,,,,.T.,.F.)
MensagemRun('Backup conclu¡do!','End')
EndIf
EndIf
ElseIf cOperacao=='Restore'
If Alert('Aten‡Æo !!!; NÆo prossiga com essa opera‡Æo; sem o devido conhecimento.;Desejas Continuar ?',{'NÆo','Sim'})==2
cColor:=SetColor()
cTela:=SaveScreen(04,19,14,39)
SetColor('N/BG,W+/N')
aDir:=Directory(cDestino + '*.zip')
aRay:={}
For i = 1 To Len(aDir)
Aadd(aRay, aDir[i,1])
Next
Shade(04,19,13,38)
@ 04,20 Say '´ Escolha o zip Ã'
nChoice:=Achoice(06,21,11,36,aRay)
If nChoice <> 0
If Confirma('Confirma o in¡cio da restaura‡Æo?')==1
If LastKey()==K_ESC
SetColor(cColor)
RestScreen(04,19,14,39,cTela)
Return(.T.)
Else
MensagemRun('Aguarde, restaurando o backup...','Begin')
aExtract:=Hb_GetFilesInZip(cDestino + aDir[nChoice,1])
If Hb_UnZipFile('171130.zip',,.T.,,'C:\',aExtract)
MensagemRun('Restaura‡Æo conclu¡da!','End')
Alert('Acesse o sistema novamente...')
Quit
EndIf
EndIf
EndIf
EndIf
SetColor(cColor)
RestScreen(04,19,14,39,cTela)
EndIf
EndIf
Return(.T.)