[delphizip] Re: ZipBuilder DirEntry [Un]compressedSize mishmashed values in high DWORD

  • From: R Peters <rpeters@xxxxxxxxxxxxx>
  • To: delphizip@xxxxxxxxxxxxx
  • Date: Thu, 16 Sep 2010 10:35:17 +1000

Woops - replied to the wrong email (not surprising after battling with BCB4
- its been so long).
Russell Peters
On Thu, Sep 16, 2010 at 10:23 AM, R Peters <rpeters@xxxxxxxxxxxxx> wrote:

> 2010/9/16 Lubomir Prochazka <d@xxxxxxx>
>
>
>>
>> Roger Aelbrecht napsal(a):
>> > Lubomir Prochazka wrote:
>> >> Hello,
>> >>
>> >> I use ZipBuilder 1.9.0.0100, BCB4 with WinXP. I have mishmashed values
>> >> at upper 32bits during iterating properties
>> >> DirEntry[index]->UncompressedSize
>> >> and DirEntry[index]->CompressedSize after loadin' ZIP file. There's
>> >> right size % 2^32 in the low 32bits.
>> >> Same way works my program and compilated CDemo1 too. Can you help me
>> >> with this problem?
>> >>
>> >> Regards
>> >> Lubos
>> >> -----------
>> >> To unsubscribe from this list, send an empty e-mail
>> >> message to:
>> >>    delphizip-request@xxxxxxxxxxxxx
>> >> and put the word unsubscribe in the subject.
>> >>
>> >>
>> >
>> > Seems to be a problem with values that require Z64.
>> > Can you send me the smallest possible zip that shows this problem so
>> > that we can investigate were the translations goes wrong.
>> >
>> > Please send the file to roger@xxxxxxxxxxxxx
>> >
>>
>> Thank you for your response.
>>
>> There's no problem with ZIP's file.
>> Example:
>> - created a.txt file
>> - then put a letter "a" in it
>> - compressed into a.zip file in(by) the Windows Explorer
>> - opened in a program build up by ZipBuilder - Compressed and
>> Uncompressed size is 44059045832687617 (0x9C877800000001)
>>
>>
>> --
>> Lubos
>> -----------
>> To unsubscribe from this list, send an empty e-mail
>> message to:
>>  delphizip-request@xxxxxxxxxxxxx
>> and put the word unsubscribe in the subject.
>>
> At first look (second reading) I would say the problem is in the __int64
> support in BCB4 and the smallest file that is likely to show it is over 4G.
> I would say the lower 32 bits are correct but that something is wrong in
> the upper 32 bits.
> I have BCB4 (and D4) on a virtual computer so I can try it - actually it is
> an obvious thing that I should have already tried but apart from not
> thinking of doing so, I hate testing huge zips on a virtual computer (too
> slow).
>
> To compile Demo1 in BCB4 I had to add
>
> #include <shellapi.h>
> in SFX.cpp
>
> I made a quick test app but I am having trouble debugging it -
>   1. on app shut down I am getting an AV but won't know why until I can
> convince the debugger to work.
>   2. looks like I cannot debug the component so will have to rebuild with
> static linking - maybe that will help.
>   3. the results were wrong (high 32 bits appeared almost random) but for
> some reason it now they are as expected - so something changed between
> builds/runs.
>
> I will try again later but in the meantime I would encourage you to build a
> big zip (using WinZip?) and check that BCB5 gives correct sizes.
> Russell Peters
>


-----------
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: