zcfv - Zlib CRC File Validator (1999-11-18)
==========================================

The purpose of this program is to scan files in the current directory
and create a plain text file list of CRC (Cyclical Redundancy Check)
values for each file. This program then can read that text file, and
compare the CRC values against the real files and be able to tell if
they have been changed or corrupted.

zcfv is similar in operation to the program known as SFV, but with
these differences: 1) uses ZIP compatible CRC calculations, 2) can
handle subdirectories, 3) has modifiable/portable source code.

Win32 Installation:
------------------
    Just copy the zcfv.exe into any directory in your system
    path. zcfv is a command-line driven program, can then run
    it by typing "zcfv" at any command prompt. zcfv -h for help.

    Why is the executable so damned big, and slightly slow to
    start? A section below will explain.

ANY O/S Installation:
--------------------
    Since zcfv is actually a Python script, it can theoretically
    be used on any system which can install Python (Windows, Unix,
    Macintosh, Dos, Amiga).

    You will need to go to http://www.python.org and download
    and install Python for your platform. Once you have Python
    installed you can copy the zcfv.py into a directory in your
    path, or any other convenient location to run.

    You may, of course, delete the large EXE file!


Using zcfv:
==========

 Most of the time you will need no command line arguments. By default
 if zfv-crc.txt exists in the current directory, files will be verified;
 if it doesn't exist, then a zfv-crc.txt file will be created.

 -h     - this help text is displayed
 -t     - force TEST files in current directory against stored CRC values
 -c     - force CREATION (or re-creation) of CRC text file in current directory
 -s     - case SENSITIVITY in filenames, default is non-sensitive
 -r     - RECURSE through subdirectories (writes/reads file in each dir)
 -x     - EXPUNGE (delete) the zfv-crc.txt file from directory(s)
 -d     - DELETE any files with mismatched CRC values (use with care!)
 -1     - do not write CRC creation lines to screen (default: screen & file)
 -2     - do not write CRC creation lines to file (default: screen & file)
 -f filename    - alternate FILENAME to use other than zfv-crc.txt
 -l logfile     - LOG errors to this file (warning: no file sharing support)
 -b buffersize  - set the file BUFFER size in bytes (default: 131072)


Questions and Answers:
=====================

Why is the zcfv.exe so damned big, and slightly slow to start?

    Sorry about that, but the reason is that this program is actually
    a "Python" script (see the ANY O/S install section above for
    details). The EXE version is a Python script neatly wrapped
    up with all the support and runtime run-time DLL's it requires
    to run on Windows. I have decided to distribute it this way
    just to make it easy to use for Win32 users who do not want
    to install Python. If you install Python on your Win32 system
    you can throw away the EXE and just use the small zcfv.py
    script file.

    The benefit of writing this utility in Python is that it
    can be run on any O/S that supports Python. Also it means
    you have full source code and can modify the program to
    your needs. Plus, I just happen to like Python, and like
    programming in Python.

    Python is an object oriented (though the script here is
    procedural) interpreted language. It is like PERL in concept,
    but about a 100 times better (imho). After years of using
    PERL, after two days with Python i never wanted to look at
    another line of eye-splitting PERL code again! If you want
    to know more about Python then go to http://www.python.org

Can I burn zcfv.exe to a CD-Rom and run it from there?

    Yep, should work.


Your humble servant,
T. Middleton - http://www.vex.net/~x/

