[delphizip] Re: Problem with Zip file created with IZArc

  • From: Marek Jasinski <marek.jasinski@xxxxxxxxxx>
  • To: delphizip@xxxxxxxxxxxxx
  • Date: Thu, 04 Oct 2007 21:26:43 +0200

Russel, Roger,

thanks a lot for the info.

Regards
Marek
> To expand upon Roger's reply.
> The zip format specifies (recommends) that the file names
> <quote>
>       The name of the file, with optional relative path.
>       The path stored should not contain a drive or
>       device letter, or a leading slash.  All slashes
>       should be forward slashes '/' as opposed to
>       backwards slashes '\' for compatibility with Amiga
>       and UNIX file systems etc.
> </quote>
>
> It would appear that IZArc does not follow this 'rule' but the extracted
> files should still be ok because the 'error' is ignored with only a warning
> given.
> Russell Peters
>   
>> -----Original Message-----
>> From: delphizip-bounce@xxxxxxxxxxxxx [mailto:delphizip-
>> bounce@xxxxxxxxxxxxx] On Behalf Of Roger Aelbrecht
>> Sent: Thursday, 4 October 2007 1:53 AM
>> To: delphizip@xxxxxxxxxxxxx
>> Subject: [delphizip] Re: Problem with Zip file created with IZArc
>>
>> Marek Jasinski wrote:
>>     
>>> Hello,
>>>
>>> to reproduce the problem:
>>> 1. Create with IZArc a IzarcTest.zip file  (one file in subfolder)
>>>       
>> e.g.
>>     
>>> fr\myTest.ini
>>> 2. Open the IzarcTest.zip file in ZIPDEMO3 program and  use EXTRACT
>>> button for exctracting
>>> 3. The message 'Zip file structure invalid' will be shown (error
>>> 200707).  The archive is properly extracted.
>>>
>>> Which meaning has this message? Is the file really wrong? Can I
>>>       
>> ignore
>>     
>>> this message?
>>>
>>> Regards
>>> Marek
>>>
>>> DLL-Trace from exctracting:
>>>
>>> Unzip base directory: K:\Temp
>>> trace is on, function=UnzDllExec
>>> Trace: ready to setup
>>> Trace: FSetUpToProcessZipFile
>>> Time Hour 18, min 44, sec 50 msec 277
>>> Trace: argc = 0, process_all_files = 1
>>> Using DelZip.dll version 1.79.7.4 Aug 25 2007
>>> Trace: In process_zipfiles
>>> Trace: two
>>> Trace: four in process.c
>>> Trace: starting do_seekable
>>> Trace: do_seekable, loc 2
>>> Trace: open_input_file; fname=C:\TEMP\IzarcTest.zip
>>> Trace: zip file C:\TEMP\IzarcTest.zip opened OK
>>> Trace: do_seekable, loc 3
>>> Trace: do_seekable, loc 4
>>> Trace: in find_ecrec (end of central dir)
>>> Trace: Found end-of-central-dir signature at offset 6135 (000017F7h)
>>> Trace:     from beginning of file; offset 6135 (17F7h) within block
>>> Trace: do_seekable, loc 5
>>> Trace: do_seekable, loc 6
>>> Trace: do_seekable, loc 7
>>> Trace: about to extract\list files (error = 0)
>>> Trace: in extract_or_test_files
>>> Trace: members_remaining = 1, unmatched fspecs = 0
>>> Trace: in process_cdir_file_hdr()
>>> Trace: in get_cdir_ent
>>> Trace: End of get_cdir_ent in process.c. Found filename of len 13
>>> Trace: Good entry; hostnum of file = 0
>>> Trace: process_cdir_file_hdr returning PK_COOL
>>> 1 files to add
>>> Total uncompressed size: 19 Kb
>>> Trace: starting main loop
>>> Trace: New iter: members_remaining after this pass = 0
>>> Trace: in process_cdir_file_hdr()
>>> Trace: in get_cdir_ent
>>> Trace: End of get_cdir_ent in process.c. Found filename of len 13
>>> Trace: Good entry; hostnum of file = 0
>>> Trace: process_cdir_file_hdr returning PK_COOL
>>> Trace: back in extract_or_test_files
>>> Trace: file is OK: fr\myTest.ini
>>> DLL expects to extract 1 files
>>> Trace: starting second loop - THIS TIME we take action.
>>> Trace: loc A: request = 0, inbuf_offset = 0
>>> Trace: about to process local file hdr
>>> Trace: process_local_file_hdr of process.c found fname len of 13
>>> Read local filename fr\myTest.ini
>>> Warning: Names do not match - using 'fr\myTest.ini'
>>>       
>> [local:fr\myTest.ini]
>>     
>>> Trace: parsing a FAT file
>>> Zip file structure invalid
>>> Trace: checkdir of win32.c
>>> Trace: A. initializing buildpathHPFS and buildpathFAT
>>> Trace: checkdir of win32.c
>>> Trace: appending dir segment [fr]
>>> Trace: buildpathHPFS now = [fr\]
>>> Trace: buildpathFAT now =  [fr\]
>>> Trace: checkdir of win32.c
>>> Trace: appending filename [myTest.ini]
>>> Trace: buildpathHPFS: fr\myTest.ini  buildpathFAT: fr\myTest.ini
>>> Trace: checkdir of win32.c
>>> Trace: mapname returns with filename = [fr\myTest.ini] (error = 0)
>>> Trace: starting switch near Novell failsafe in extract.c
>>> Trace: check_for_newer:  existing 1191333594, archive 1191333594,
>>>       
>> Result 1
>>     
>>> Trace: in extract.c, about to call decrypt
>>> Trace: Start extract_or_test_member: K:\Temp\fr\myTest.ini
>>> Trace: initializing pG->crc32val to 00000000
>>> trace: open_outfile:  stat(K:\Temp\fr\myTest.ini) returns file exists
>>> Deleted pre-existing file K:\Temp\fr\myTest.ini
>>> Trace: open_outfile:  fopen(K:\Temp\fr\myTest.ini) for writing
>>>       
>> succeeded
>>     
>>> Trace: unpack the file
>>> Trace: starting inflate
>>> Trace: in inflate_dynamic
>>> Trace: inflate codes
>>> Trace: inflate_codes returning 0
>>> Trace: inflate_dynamic returning 0
>>> Trace: NO ERROR - 4506 bytes in Huffman tables (6\entry)
>>> Trace: setting date\time in close_outfile of win32.c
>>> Trace: After extraction, pG->crc32val = A45D304C
>>> Trace: File's CRC in local hdr = A45D304C
>>> Unzipped file K:\Temp\fr\myTest.ini of size 19484
>>> Trace: jump back in central dir to where we were
>>> Trace: done with big outer block
>>> Trace: filnum = 1
>>> Trace: Done with extract\list files (error = 1)
>>> Trace: after do_seekable, warn=1   missdir=0  missfi=0  losefi=0
>>>       
>> winfi=0
>>     
>>> Trace: do_seekable(0) returns 1 (see unzpriv.h, PK_*)
>>> Trace: five in process.c
>>> Trace: six
>>> warnings were given
>>> Trace: seven
>>> Trace: checkdir of win32.c
>>> Trace: *** BACK FROM CALL TO process_zipfiles ***
>>> Files acted on = 1
>>> Time Hour 18, min 44, sec 52 msec 465
>>>
>>>
>>> -----------
>>> To unsubscribe from this list, send an empty e-mail
>>> message to:
>>>   delphizip-request@xxxxxxxxxxxxx
>>> and put the word unsubscribe in the subject.
>>>
>>>
>>>       
>> As you can see in the trace there is a warning about the filename.
>>
>>  From the place in the dll code were the error 200707 ( = 031003 Hex)
>>
>>   /* for files from DOS FAT, check for use of backslash instead
>>    * of slash as directory separator (bug in some zipper(s); so
>>    * far, not a problem in HPFS, NTFS or VFAT systems) */
>>
>>
>>
>>
>> --
>> Roger Aelbrecht
>>
>>
>> -----------
>> To unsubscribe from this list, send an empty e-mail
>> message to:
>>   delphizip-request@xxxxxxxxxxxxx
>> and put the word unsubscribe in the subject.
>>
>> __________ NOD32 2570 (20071003) Information __________
>>
>> This message was checked by NOD32 antivirus system.
>> http://www.eset.com
>>     
>
>
> -----------
> To unsubscribe from this list, send an empty e-mail 
> message to:
>   delphizip-request@xxxxxxxxxxxxx 
> and put the word unsubscribe in the subject.
>
>
>
>   

-----------
To unsubscribe from this list, send an empty e-mail 
message to:
  delphizip-request@xxxxxxxxxxxxx 
and put the word unsubscribe in the subject.

Other related posts: