[delphizip] Re: Max ZIP file size

  • From: "James Turner" <james.d.h.turner@xxxxxxxxxxxx>
  • To: <delphizip@xxxxxxxxxxxxx>
  • Date: Wed, 9 Oct 2002 15:44:22 +0100


Philipp,

You're right to question whether the size limit for Zip files is 2GB or 4GB.
Theoretically, the limit is 4GB but in practice, you are likely to encounter
bugs if the zip file itself is larger than 2GB. Individual files can safely
have an uncompressed size of 2-4GB (probably).

If you need to go beyond 2GB reliably, you must choose another archive
format. Whilst I have attempted to contribute to the Delphi Zip project with
suggestions and by answering questions where I can, I am not one of the
programmers behind it. Those that have created Delphi Zip have done so in
their spare time (many thanks). My understanding is that the origins of
DelpiZip are in standard DLL source code provided free of charge by InfoZip.
Over the years, this code has been partially rewritten and wrappers in C++
and Delphi developed. It is my opinion that the workload between DLL and
Pascal/C++ code is not shared very sensibly with regard to code development
and maintainance. Personally, I think that the DLLs should be responsible
only for compressing/decompressing data streams. If this were so,
development of a 64 bit version (either using pkware's format or another
one) would be relatively straightforward. However, I do not have the
experience in C/C++ to create such a DLL (from the existing ones) myself.

If you desperately need to create a huge archiver here are your options.

1: Look for another tool other than DelphiZip. There are plenty out there
but you will probably have to part with some money.
2: Take a look at the standard compression libraries in Windows. You may
find that you can create your own archive format or perhaps cabinet files
can exceed 2GB (I don't know). Checkout http://msdn.microsoft.com
3: Devise an automated method of creating/unpacking multiple zip files. i.e.
create a .zip directory and fill it with .zip files. This is not ideal but
if you're desperate it may be the best solution.


James Turner

PS
To those that think that the DLLs should do all the work with Delphi
providing only front-end support, consider this. An additional layer could
be provided in the DLLs to perform work that is common to both the C++ and
Delphi versions without requiring either to use those additional functions.

PPS
To all those concerned, I'm not criticising - I appreciate the fact that
much time is being given up free of charge.

----- Original Message -----
From: "Philipp Engel" <philipp.engel@xxxxxxxxxx>
To: "James Turner" <delphizip@xxxxxxxxxxxxx>
Sent: Tuesday, October 08, 2002 1:11 PM
Subject: [delphizip] Re: Max ZIP file size


>
> Hallo James,
>
> JT> The size limitations on standard zip files result from the fact that
the zip
> JT> format uses 32 bit integers. The Zip64 format proposed by pkware
includes
> JT> additional file headers and directory blocks that contain 64bit
integers. In
> JT> the future, this format may well be accepted as the standard but, in
my
> JT> humble opinion, is a total mess. It seems to stem from the desire to
> JT> maintain backward compatibility. This may sound sensible, but all that
is
> JT> achieved by this stupid (my opinion) format, is to enable a standard
zip
> JT> program to read the content listing - not very useful really.
>
> Yes, that's almost the same that read out of it. But backward
> compatibility has its advantages and disadvantages. All those
> proprietary formats and the companies behind them have the guts to
> change the format (i am speaking of ace and rar) and leave backwards
> compatibility behind, which seems to work quite well.
>
> But the problem is, although there is a 2GB file size limit, also 4 GB
> won't be enough soon, well, for updates or all the internet related
> stuff it might be ok, but the real problem is when people want to use
> the zip format for their backups. Here, 4GB are a limitation that is
> reached very easiliy, and 2 GB is even less. And I get complains about
> the limit more and more often, so I am interested in extending it at
> least to 4GB.
>
> Any advice?
>
> So,
>
> JT> I hope that this is of some help.
>
> JT> James Turner
>
>
>
>
> Best regards, Philipp
>
> --
> "They that can give up essential liberty to obtain a little temporary
> safety deserve neither liberty nor safety."  Benjamin Franklin
> philipp.engel@xxxxxxxxxx
> http://www.filzip.com
>
>
>
>


Other related posts: