syspel Posted April 29, 2014 Report Share Posted April 29, 2014 ola pessoal alguém pode me ajudar eu não consigo abrir um arquivo teste.zíp usando hb_unzipfile IF HB_UNZIPFILE("TESTE.ZIP",9) // NAO ABRE NEI APAU JUVENAL ENDIF estou usando zlib,hbzip deste já obrigado BCC582 FWH 1402 DBF carlos syspel Quote Link to comment Share on other sites More sharing options...
fladimir Posted April 29, 2014 Report Share Posted April 29, 2014 Eu faço assim: ******************************************************************************** Function Unzip( cZip, cSenhaZip) *-- Faz UnZIP ******************************************************************************** LOCAL aExtract, lOk := .F. aExtract := hb_GetFilesInZip( cZip ) // extract all files in zip IF hb_UnzipFile( cZip, {| cFile | QOut(cFile) },, cSenhaZip, '.\', aExtract ) QOut( "Arquivo foi extraido com sucesso" ) lOk := .T. ENDIF RETURN lOk Quote Link to comment Share on other sites More sharing options...
syspel Posted April 30, 2014 Author Report Share Posted April 30, 2014 vou tester obrigado Quote Link to comment Share on other sites More sharing options...
syspel Posted May 22, 2014 Author Report Share Posted May 22, 2014 EU TESTEI,ABRI O ARQUIVO VOLTOU OS ARQUIVO.DEPOIS QUE ELE VOLTA O ARQUIVO,NAO FUNCIONA MAIS NADA,E COMO SE ESTIVE SEM COMMANDO O SISTEMA EM QUALQUER LUGAR QUE EU TECLAR DA ERRO QUE NO TEM NADA A VER E RUIN CARLOS FWH1402 DBF BCC582 Quote Link to comment Share on other sites More sharing options...
SAOliveira Posted May 22, 2014 Report Share Posted May 22, 2014 IF(Subs(cBack,Len(cBack)-2,3)=="ZIP") WMensa:="Aguarde... descompactando arquivo." ; OWmensa:Refresh() aExtract:=HB_GetFilesInZip(cBack) nRet:=HB_UNZIPFILE(cBack,,,,PastaSistema+"\TMP",aExtract,) cBack:=PastaSistema+"\TMP\"+aExtract[1] Warquivo:=aExtract[1] ; OWarquivo:Refresh() ENDIF Quote Link to comment Share on other sites More sharing options...
kapiaba Posted May 22, 2014 Report Share Posted May 22, 2014 // Nao esqueca de incluir: hbzip.lib y zlib.lib #include "FiveWin.ch" //... FUNCAO ONDE VOCE PEGA O ARQUIVO... E PARTE PARA: FUNCTION Descomprime( cFile, cPathDescarga ) LOCAL oDlg, nFiles, aFiles, oText, cMsg, oMeter, nActual := 0 DEFAULT cPathDescarga := "C:\BACKUP" IF FILE( cFIle ) aFiles := hb_GetFilesInZip( cFile ) nFiles := Len( hb_GetFilesInZip( cFile ) ) DEFINE DIALOG oDlg FROM 1, 1 TO 10, 60 ; TITLE "Espere executando recuperacao de dados..." @ 0.5, 2 SAY oText VAR cMsg SIZE 180, 20 OF oDlg @ 2, 2 METER oMeter VAR nActual TOTAL 100 OF oDlg SIZE 200, 20 oDlg:bStart:={||lVal:=Hb_UnZipFile(cFile,{|cFile,nPos|oText:SetText("Descomprimindo"+CRLF+cFile),; nActual:=nPos/nFiles*100,oMeter:Set(nActual)},.T.,,cPathDescarga,aFiles,NIL ),; IF(lVal,MsgInfo("Restauracaon completada com Exito"+CRLF+CRLF,cVersion),; MsgStop("Nao foi podido restaurar os dados")),; oDlg:END()} ACTIVATE DIALOG oDlg CENTERED ELSE ? [Desculpe. nao achei o arquivo para descomprimir] ENDIF RETURN NIL Quote Link to comment Share on other sites More sharing options...
kapiaba Posted May 22, 2014 Report Share Posted May 22, 2014 Veja isto: http://bielsys.blogspot.com.br/2009/08/usando-ficheros-comprimidos-zip-dede.html http://forums.fivetechsupport.com/viewtopic.php?f=6&t=11999&p=59579&hilit=hb+getfilesinzip#p59579 abs, Quote Link to comment Share on other sites More sharing options...
kapiaba Posted May 22, 2014 Report Share Posted May 22, 2014 /* Compresion / descompresion de ficheros ZIP desde Harbour (c) 2009 Biel Maimo bmaimo@gmail.com - bielsys.blogspot.com */ #include "FiveWin.ch" #include "Directry.ch" STATIC cDirLocal FUNCTION Main() LOCAL cFile,aFile, aFileBck:={} cDirLocal:=cFilePath( GetModuleFileName( GetInstance() ) ) cFile:='dados.zip' aFile:=Directory('*.*') //Todos los ficheros de la capeta donde se ejecuta nuestro ejemplo AEval(aFile,{|a|AAdd(aFileBck,cDirLocal+a[F_NAME])}) //Añado path a los nombre de archivo //Comprime( cFile, aFileBck ) ? [VOU DESCOMPRIMIR] DesComprime( cFile, cDirLocal ) RETURN NIL //--------------------------------------- STATIC FUNCTION Comprime(cFile,aFile) LOCAL oDlg,oMeter,oText,cMsg,nLen,lVal,nActual:=0 nLen:=Len(aFile) DEFINE DIALOG oDlg FROM 1, 1 TO 10, 60 TITLE "Espere comprimiendo archivos..." @ 0.5, 2 SAY oText VAR cMsg SIZE 180, 20 OF oDlg @ 2, 2 METER oMeter VAR nActual TOTAL 100 OF oDlg SIZE 200, 20 oDlg:bStart:={||lVal:=Hb_ZIPFILE(cFile,aFile, 9,{|cFile,nPos|oText:SetText('Comprimiendo '+cFile),; nActual:=nPos/nLen*100,oMeter:Set(nActual)} ),; IF(lVal,MsgInfo('Compresión completada con éxito'+CRLF+CRLF+; 'Fichero guardado '+cFile,'Bielsys 2009'),; MsgStop('No pudo realizarse la compresión')),; oDlg:END()} ACTIVATE DIALOG oDlg CENTERED RETURN lVal //---------------------------------- FUNCTION Descomprime( cFile, cDirLocal ) LOCAL oDlg, nFiles, aFiles, oText, cMsg, oMeter, nActual := 0 LOCAL cVersion := "1.0" DEFAULT cDirLocal := "C:\BACKUP" IF FILE( cFIle ) aFiles := hb_GetFilesInZip( cFile ) nFiles := Len( hb_GetFilesInZip( cFile ) ) DEFINE DIALOG oDlg FROM 1, 1 TO 10, 60 ; TITLE "Espere executando recuperacao de dados..." @ 0.5, 2 SAY oText VAR cMsg SIZE 180, 20 OF oDlg @ 2, 2 METER oMeter VAR nActual TOTAL 100 OF oDlg SIZE 200, 20 // AQUI ESTA RETORNANDO A MENSAGEM ERRADA, MAS FUNCIONA. oDlg:bStart:={||lVal:=Hb_UnZipFile(cFile,{|cFile,nPos|oText:SetText("Descomprimindo"+CRLF+cFile),; nActual:=nPos/nFiles*100,oMeter:Set(nActual)},.T.,,cDirLocal,aFiles,NIL ),; IF(lVal,MsgInfo("Restauracaon completada com Exito"+CRLF+CRLF,cVersion),; MsgStop("Tecle <Enter> Para Finalizar")),; oDlg:END()} ACTIVATE DIALOG oDlg CENTERED ELSE ? [Desculpe. nao achei o arquivo para descomprimir] ENDIF RETURN NIL Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.