Скачать ZipObj - ZIP Compression Object

Paul Peterson
13.07.1991
Скачать файл (14,08 Кб)

 

file zipobj.pas
zip compression object
=====================================================================
flg dd-mmm-yy who : description -------------------------------------
 01 24-jun-91 prp : initial creation.
end-of-change-log
=====================================================================
verbose description}
code used here was originally from:
Shrink.Pas version 1.2  (C) Copyright 1989 by R. P. Byrne
Compress using Lempel-Ziv-Welch (LZW) compression techniques
("shrink").
Modified greatly by PRP
There are two main ways to use this object:
   1-to zip a set of files call:
       init();
       openoutfile();
       buildfilelist();
       repeat until not zipnext;
       closeoutfile();
       done();
   2-to add files to a zip until it reaches a desired size:
       init();
       openoutfile();
       repeat
         addtozip()
       until currentsize > max_desired;
       removelast;
       closeoutfile();
       done();
 Hooks for displaying progress are provided.
   The code from Shrink.pas was turned into a object and made function
 but the following flaws exist:
   1 - There was no attempt made to optimize the code.
   2 - The inline code was not touched and thus needed kludges to get
       it to work. See zptr and PutCharMeth below. Several variables
       referenced by the inline code had to stay global. Also for some
       reason this unit doesn't work if overlayed!
   3 - For some reason this hangs on large files (and so does Shrink.pas).
 Should any kind person have the time to correct these flaws I would sure
 like to hear about it.
   Paul Peterson (602)-778-2762, Summit Software Developers, 72371,1136