Page 2 of 2

PostPosted: Wed Aug 27, 2008 7:28 pm
by hag
Enrico:
They not in my harbour directories. There is hbziplib.ch and hbzlib.h in the include files but nothing else.

Can't find them. Can you email me a copy of each.

hgoldstein@slgg.com

Thanks

PostPosted: Wed Aug 27, 2008 7:55 pm
by Enrico Maria Giordano
hag wrote:Enrico:
They not in my harbour directories. There is hbziplib.ch and hbzlib.h in the include files but nothing else.

Can't find them.


You are not using the current version of Harbour.

hag wrote:Can you email me a copy of each.


No. You can't use the new libraries with an older Harbour version.

EMG

PostPosted: Wed Aug 27, 2008 8:37 pm
by hag
Can you let me know the date of the current version...Thanks.

PostPosted: Wed Aug 27, 2008 8:50 pm
by hag
Enrico:

Just downloaded 8/20/2008 version of harbour from fivetech site and still can"t find HBZIP.LIB and ZLIB.lib. What am I doing wrong?

PostPosted: Wed Aug 27, 2008 8:51 pm
by Enrico Maria Giordano
hag wrote:Can you let me know the date of the current version...Thanks.


2008-08-10

http://www.harbour-project.org

EMG

PostPosted: Wed Aug 27, 2008 8:52 pm
by Enrico Maria Giordano
hag wrote:Enrico:

Just downloaded 8/20/2008 version of harbour from fivetech site and still can"t find HBZIP.LIB and ZLIB.lib. What am I doing wrong?


I repeat: the correct libraries for the current Harbour are

hbziparch.lib
hbzlib.lib

EMG

PostPosted: Wed Aug 27, 2008 9:12 pm
by hag
Sorry to be a pest.

Downloaded harbour-1.0.0-win32-bcc551 and checked lib and no hbziparch.lib. There is hbzlib.lib. Thats it. Now what???

Thanks for your help.

Hag

PostPosted: Wed Aug 27, 2008 9:45 pm
by Enrico Maria Giordano
hag wrote:Sorry to be a pest.

Downloaded harbour-1.0.0-win32-bcc551 and checked lib and no hbziparch.lib. There is hbzlib.lib. Thats it. Now what???

Thanks for your help.

Hag


Sorry, hbziparch is now a contrib library so you have to compile it yourself. Or send me a private email and I will send you back the library already compiled.

EMG

PostPosted: Wed Aug 27, 2008 10:28 pm
by Antonio Linares
Dear Enrico,

Would you mind to upload them to rapidshare or similar and post here the download url ? Thanks

This way other users can get them too :-)

PostPosted: Wed Aug 27, 2008 10:38 pm
by Enrico Maria Giordano
Antonio Linares wrote:Dear Enrico,

Would you mind to upload them to rapidshare or similar and post here the download url ? Thanks

This way other users can get them too :-)


Here it is:

http://www.emagsoftware.it/hbziparch.lib

EMG

PostPosted: Wed Aug 27, 2008 11:35 pm
by hag
Enrico:
Thanks for the file.
One other problem. How do I find out what the functions are in the library and how to use them. Is there any documentation I can look at?

PostPosted: Thu Aug 28, 2008 7:51 am
by Antonio Linares
Harvey,

This example may be of help:
Code: Select all  Expand view
//
// $Id: testzip.prg,v 1.6 2003/09/15 02:57:10 paultucker Exp $
//

// Requires samples.lib for gauge support
//

#include "common.ch"
#include "setcurs.ch"

proc Main()
Local aFiles, aGauge, nLen, aDir
Local aSaveFiles
Local aGaugeFile

   // This is the 'safe' thing to do until Alert() is given focus.
   SetMode( 50,80 )

   ZipCreate( "TEST.ZIP", "testzip.prg" )

   aFiles := {"testzip.prg",GetEnv("windir")+ "\win.ini"}
   nLen   := Len(afiles)

   ZipCreate( "TEST1.ZIP", aFiles[2] )
   ZipCreate( "TEST2.ZIP", aFiles, 8, {|cFile,nPos| qout("Added " + cFile)})

   // something here is not clipper compatible
   // (These can be removed after the box drawing is corrected)
   ?;?;?
   ?
   ?;?;?

   aGauge := GaugeNew( row()-6, 5, row()-4,74 , "W/B", "W+/B" ,'²')
   GaugeDisplay( aGauge )

   aGaugeFile := GaugeNew( row()+2, 5, row()+4,74 , "W/B", "W+/B" ,'²')
   GaugeDisplay( aGaugeFile )

   aFiles := {}

   aDir   := Directory( "*.prg" )
   Aeval( aDir, {|a| aadd( aFiles, a[1]) })

   /* lets add an new bigger files on this example*/
   aDir   := Directory( "*.map" )
   Aeval( aDir, {|a| aadd( aFiles, a[1]) })

   aDir   := Directory( "*.c" )
   Aeval( aDir, {|a| aadd( aFiles, a[1]) })
   nLen   := Len(afiles)

   // Lets save aFile  Array for later usage
   aSaveFiles := aFiles

   set cursor off

   ZipCreate("test3.zip", aFiles, 8, ;
              {|cFile,nPos| GaugeUpdate(aGauge,nPos/nLen) },,'hello',,,;
              {|nPos,nCur| GaugeUpdate(aGaugeFile,nPos/nCur)})

   set cursor on

   ? str( nlen ) +" files were added to the zip"

   // method 1
   aFiles :=  hb_GetFilesInZip( "test3.zip" )
   if aFiles != NIL
      ? str( Len( aFiles ) ) + " files are in the zip"
   endif
   // or simpler, method 2
   ? str( hb_GetFileCount("test3.zip" ) ) + " files using alternate method"

   ZipHasPassword( "TEST1.ZIP" )
   ZipHasPassword( "test3.zip" )

   //ok, now we create an file on an floppy
   ? "Put a formatted Floppy/Zip disk in drive A: and press any key - (ESC) to skip"
   ? "Existing files will not be deleted!"
   Inkey( 0 )
   if lastkey() != 27

      Cls
      // no need for all the qout's after a cls.

      aGauge := GaugeNew( row(), 5, row()+2,74 , "W/B", "W+/B" ,'²')
      GaugeDisplay( aGauge )
      ?;?
      aGaugeFile := GaugeNew( row(), 5, row()+2,74 , "W/B", "W+/B" ,'²')
      GaugeDisplay( aGaugeFile )

      HB_SETDISKZIP( { | x |  Alert( "Please insert disk no " + Str( x , 3 ) ) } )

      set cursor off

      ZipCreateToFloppy("test4.zip", aSaveFiles, 9, ;
                 {|cFile,nPos| GaugeUpdate(aGauge,nPos/nLen) },,'hello',,,;
                 {|nPos,nCur| GaugeUpdate(aGaugeFile,nPos/nCur)})

      set cursor on

   endif

function ZipCreate(cFile, uContents, nLevel, bUpdate, lOverwrite, password,;
                   lPath, lDrive, bFileUpdate)
   Local lRet

   Default lOverwrite to .t.
   Default lPath to .t.

   IF ( lRet := HB_ZIPFILE( cFile, uContents, nLevel, bUpdate, lOverwrite,;
                            password, lPath, lDrive, bFileUpdate) )
      ? cFile + " was successfully created"
   ENDIF

Return lRet

function ZipCreateToFloppy(cFile, uContents, nLevel, bUpdate, lOverwrite, password,;
                   lPath, lDrive, bFileUpdate)
   Local lRet

   Default lOverwrite to .t.
   Default lPath to .t.

   IF ( lRet :=  HB_ZIPFILEBYPKSPAN ( "a:\" + cFile, uContents, nLevel, bUpdate, lOverwrite,;
                            password, lPath, lDrive, bFileUpdate) )
      ? cFile + " was successfully created"
   ENDIF

Return lRet


Function ZipHasPassword( cFile )
   Local lRet

   ? cFile + " has " + iif(lRet := hb_ZipWithPassword(cFile),"a","no" )+ " password"

Return lRet

PostPosted: Thu Aug 28, 2008 7:56 am
by Antonio Linares
hbziparch.lib has been already included in www.fivetechsoft.com/files/harbour.exe and will be included in next Harbour builds too :-)

PostPosted: Thu Aug 28, 2008 6:35 pm
by hag
Antonio
Thanks.