Delphi 2 Zip Package
Version 1.10, May 12, 1997
by Eric W. Engler


See FIXES.TXT for note on changes since version 1.00.  If you already
have v1.00 installed, then install this update right over the top of 
it.  Make sure you rebuild the Component library with the updated 
VCLs include with this release.


                           IMPORTANT!

  After this update, if you open a Delphi project that used v1.00 of 
  DELZIP, YOU'LL GET AN ERROR ON THE WIDTH AND HEIGHT PROPERTIES.  
  They are no longer used, or needed, so just tell Delphi to ignore 
  them and they'll go away!


This is a complete release, so you DO NOT need to have v1.00 before
installing this release.


Installation
------------

This is one of the biggest freeware software releases for Delphi.
To get going quickly and correctly, please follow these instructions.
Read them over once before starting.  If you don't understand a
step, get help before you start the install!


1.  You MUST install this package on a computer that has Delphi v2.xx.
This package REQUIRES the Win32 API, and because of it's complexity,
back-porting to Delphi v1 is NOT practical - don't waste your time 
unless you are well-versed in C language DLL programming for both 
Win16 and Win32.

    This hasn't been tested on Delphi version 3, but it is expected
to be highly portable to that version, perhaps with no changes at all.

2.  You MUST have PKUNZIP.EXE v2.04g on your hard disk before trying 
to install this package.  It should be located anywhere in the MS-DOS
search PATH.  After this package is installed, you'll no longer need
PKUNZIP.EXE on your hard disk.  The DLLs and VCLs distributed with
this release do NOT require the PKZIP/PKUNZIP programs.

3.  Decide which "base directory" you will use for the ZIP package.
I am using C:\ZIP on my computer, but you can use whatever you
want.  Install this package from the MS-DOS prompt. This set of
MS-DOS commands will set up your directory tree (assuming your
base directory will be \ZIP):

CD \
MD ZIP
CD ZIP
COPY <source>DELZIP11.ZIP
PKUNZIP DELZIP11    (unzip the main distribution archive)
INST                (run the INST.BAT batch file)

4.  The VCLs included with this release are:
      TZipMaster - the main ZIP support VCL
                   (used by demo1 and demo2)
      TSortGrid  - a very handy descendant from StringGrid
                   (used by demo1 and demo3)
      TZipDir    - a simple utility VCL to get the contents 
                   of a ZIP archive (used by demo2)

    You must install these VCLs in a directory that's in your
    VCL Library search path.  The easiest option at this point 
    is to add the directory \ZIP\VCL to your VCL Library search 
    path.  If you'd rather not do this, then simply copy all the
    files from \ZIP\VCL to a directory already in the VCL
    Library search path.

    Once you have the VCL files in a directory in your search path,
    then you should install the VCLs into Delphi's GUI.  Once 
    installed, the three VCLs will be available on the Samples VCL
    tab.
       
      a) Close any Files or Projects open in Delphi. 
      b) Select the "Component...Install" choice and click on the
         Add button.  
      c) Enter the path and filename of where the ZIPMSTR.PAS 
         file is located, or find it now with Browse. 
      d) Click on OK.  The component library will rebuild.

    Repeat steps b, c, and d above for file SORTGRID.PAS, and
    again for file ZIPDIR.PAS  (you can skip ZIPDIR.PAS if 
    you're not interested in the advanced demo: demo3).
            
    NOTE: Although you have only installed 3 files into the Delphi
    GUI, there are many other files in the VCL subdir that are
    also essential for proper operation of this ZIP software.
    These include the two DLL import units and the DLL callback
    unit, not to mention the .DCR files.

5.  You're ready to try a demo program.  From the Delphi GUI,
    open the project C:\ZIP\DEMO1\DEMO1.DPR. Select Run.  

    The demo1 program is a fairly straight-forward example
    of what you can do with this package!  Everything revolves
    around the TSortGrid, which always shows you the contents 
    of your ZIP archive.  Use right-click on a column header to
    do an descending sort, or a left-click for an ascending sort.

6.  Now, you can look at the simplest demo program.  This is
    especially useful because it doesn't have so much "clutter".
    It just shows you the easiest way to use TZipMaster from 
    within any of your programs.

    From the Delphi GUI, open the project C:\ZIP\DEMO2\DEMO2.DPR.
    Select Run.  

7.  Demo program #3 is not intended for use by most programmers.
    If you're not extremely curious about the inner workings of
    the DLL interface to Delphi, I advise you to skip this demo!
    It shows very advanced programmers how they can access the
    DLL's without using the TZipMaster VCL.  This gives them a
    few more options, but can be difficult to code and debug.
    This level of programming is how I had to start out in
    developing the DLL interface.  The last step I did was to
    create TZipMaster and demo programs 1 and 2.  The moral of
    the story: sometimes things have to get complex in order to
    make them easy!


                         SortGrid Note

Demos 1 and 3 use the SortGrid VCL.  If you want to use it's 
"click on column header to sort" option while running a program
from Delphi's GUI, you must first turn off Delphi's "Break on 
Exception" option.  SortGrid uses exceptions to automatically 
determine the datatype used in each column.


                   Deployment of Your Programs

Any program you write using this package will require the two 
DLLs: ZIPDLL.DLL and UNZDLL.DLL to be present of each user's
hard disk.  You should have your install procedures put these
files into directory C:\WINDOWS\SYSTEM.  If that isn't possible,
then you should put them into the same directory as your .EXE
program that uses them.

Of course, there are no distribution fees for the DLLs, or
any other part of the package.  This whole package is 
freeware, but does have some minor distribution restrictions
(mainly that you can't profit from the ZIP DLLs, and you need
to document where users can get source code).  Please see 
README.TXT for these restrictions.
    

See README.TXT for more general information about this release,
and also check out the DOC subdirectory.


Eric Engler
englere@swcp.com
