
               Delphi Zip/Unzip Package, v1.10
                       For Delphi v2+


See FIXES.TXT for note on changes since version 1.00.

NOTE: The DLL source code is distributed separately due
to it's size, and the fact that most Delphi users of this
package probably don't want the C source for the DLL's.  
The DLL source is also freeware, and will remain that way. 
The filename of the DLL source code is DZDLLSR1.ZIP, and 
it comes complete with a VC++, v4.0 makefile.


Quick start:  Stop reading this file, and follow the 
instructions in file INSTALL.TXT.


This release contains:

DELZIP11.ZIP    - overall Freeware Delphi Zip v1.10 package

  DOC.ZIP       - various information about this release
  DLL.ZIP       - the ZIPDLL and UNZDLL DLL's (require Win32)
                  Put these into C:\WINDOWS\SYSTEM
  VCL.ZIP       - Essential support files.  Includes the very
                  useful TZipMaster VCL, as well as the DLL import
                  specifications and callback files.  Put these
                  into a directory in your VCL search path.
  DEMO1.ZIP     - Delphi v2 source code for demo program #1.
  DEMO2.ZIP     - Delphi v2 source code for demo program #2.
  DEMO3.ZIP     - Delphi v2 source code for demo program #3.


                   Notes About My Demo Programs

  All three demo programs are using an icon I designed.  It has
two images in it: 16x16 and 32x32.  Developers who have come 
from the Win 3.1 world should get used to providing a 16x16 
image for their icon, because Win95 and NT4 put these small 
icon images on the form's titlebar, and on the taskbar.  If you 
don't make a 16x16 image in your icon, Windows itself will make
one from the 32x32 image, but it usually doesn't look very good.

  I am NOT using any Windows Registry keys in any of the demos,
or in the DLLs themselves.  Also, because of my desire to limit 
unrelated code, the demo programs don't make use of any .INI 
files.  Your own application programs should save the user's 
ZIP/UNZIP options, and drive/directory choices in a .INI file.

  All of the 3 demos require the 2 DLLs:  
  ZIPDLL.DLL and UNZDLL.DLL


                    Notes on Demo Program 1

  This is perhaps the most useful demo program for you.  It 
shows how to make a somewhat comprehensive ZIP utility program 
using the ZipMaster VCL.
  Using a fairly small set of .PAS files, you get a surprising
amount of functionality.  This is the beauty of Delphi!
  Additional VCL's needed by Demo 1: TZipMaster, TSortGrid


                    Notes on Demo Program 2

  This is a "short and sweet" demo that shows you how to use
the ZipMaster VCL to do some quickie ZIP operations inside a 
program, whose main purpose may be unrelated to ZIP.  
  For example, you may want to let the user ZIP up his data
files with a minimum of fuss.  You, the developer, may already
know the names of the data files, so you may want to embed the
ZIP operation to make your program easier-to-use.  
  The value here is that this demo separates out the ZIP 
functionality from the user interface.  
  Additional VCL's needed by Demo 2: TZipMaster


                    Notes on Demo Program 3

  This is an advanced demo program showing you how to use the
DLL's at the lowest possible level.  It uses the ZIPDLL.PAS and
UNZDLL.PAS import units, and the ZCALLBCK.PAS callback unit, to
directly talk to the DLLs.  
  Demo Programs 1 and 2, which use the ZipMaster VCL, can only
provide you with a subset of the DLL functionality (albeit, a 
very useful subset).
  This level of programming is not recommended for most 
applications.  In most cases, you'll prefer to use ZipMaster-
based programs (like demos 1 and 2), instead. This level of
programming is definitely NOT RAD!
  Additional VCL's needed by Demo 3: ZipDir, TSortGrid



                      Distribution Policy
              Guidelines for Legal Re-distribution

  1) This applies to both end-users and developers.  The meat of
     this package is the .DLL files, and they are needed by all
     of your end-users if you use this ZIP package in your 
     program.
    
  2) You must not charge money for any part of the ZIP package.
     Warning:  The primary concern here is if you will market a
     new package that is only slightly more than a verbatim copy 
     of this package, or one of it's demos.  ANY release you sell
     is OK as long as you charge ONLY for the changes you make.

  3) You MUST either distribute the source code for this ZIP
     package, or give a WWW site where it can be obtained
     freely. This can be on a Help...About screen, in printed
     documentation, or in text files distributed with your 
     package.  Yes, it does seem odd to have this requirement
     for end-users who aren't programmers, but there is no
     mistake.  After all, it isn't hard to give them a URL
     and a few words explaining what it is for.

  4) You must handle product support with your own end-users.
     This is imperative, because I don't have anywhere near
     enough time to do support for end-users.

  5) You must document the Info-Zip's WWW home page URL, but 
     don't expect any help from the Info-Zip group, since my 
     release is only a derrivitive of their work.  They are 
     very busy doing support for their "official" releases.
        Info-Zip:   http://www.cdrom.com/pub/infozip/

  6) I will handle support issues with programmers using this 
     package on a time-available basis. Since this is being
     distributed as freeware, you can't expect the kind of 
     support you'd get from a commercial vendor.  Please limit
     your questions to those that directly pertain to this
     ZIP package.  If you just have a Delphi question in 
     general, you should consider other forums first (like 
     the excellant BDELPHI32 forum on CompuServe, or the
     Delphi Talk mailing list on the Internet).
        If you qualify for membership in a private Delphi
     forum, such as the Object Lessons mailing list for
     graduates of the Object Lessons seminars, then that
     would probably be your best bet for Delphi questions.

  7) You may NOT distribute executable versions of my demo
     programs to end-users without my approval.  These are 
     only example applications, and I don't think they're 
     good enough yet to be distributed to end-users yet.


                       Other Languages

   Developers of languages other than Delphi may want to use
these DLLs.  You can use these DLLs with VC++ and Borland C++
by simply building import/export libs for them.  I recommend
a freeware utility called IMPLIB32.EXE for this purpose.  Do
a Web search to find a copy of it.  

   The offical Info-Zip group is also working on a standard 
set of DLLs for C++ on Win32, but their efforts have been 
delayed several times, and weren't ready for me to use as a 
baseline in my efforts.  Perhaps our efforts will converge 
someday.  For now, however, my DLL interface is much
different than theirs. 


                    Updates to this Software

   Future updates to this software will be announced on the 
BDELPHI32 forum on CompuServe, and will be posted in the 
BDELPHI32 file area on CompuServe, and will be posted at 
these Web sites (if possible):

    carbohyd.siobc.ras.ru/torry/
      Torry's Delphi Pages is an excellent site in Russia.
      Torry is the cute shaggy dog!

    sunsite.icm.edu.pl/delphi/
      Delphi Super Page - DSP.  This is also one of the first
      and best.  It's home country is Poland, but has mirror
      sites in many other countries.  This is the Poland URL.

    www.cdrom.com/pub/delphi/
      Delphi Super Page - DSP.  This is the US URL.

    www.objectlessons.com/~ol/
      Object Lessons - a Delphi training company.  
      Serious Training for serious programmers.


    Please DO NOT ask me to e-mail you when this software 
is updated.  There are hundreds of users of this package, and
I can't maintain such a long list in my free time! 

    You may e-mail me with your bug notices and proposed
changes to this package.  If your message comes with suggested
changes to source code, they WILL be evaluated, and, if used,
you will get the appropriate credit in the next release.

    Special thanks go to Dennis Passmore and Almer Tigelaar, 
who offered many useful suggestions and code snippets during 
the development of this software.


Eric W. Engler
Internet: englere@swcp.com
Compuserve: 71673,2147
