A SOFTWARE INSTALLATION AID
April 6, 1993
Copyright (C) 1992, 1993 By K.R.Duncan
All Rights Reserved.
| SNAPSHOT is a "shareware program". It is not free or |
| public domain software and after you have evaluated it |
| for 30 days you are obligated to register your copy if |
| you continue using it. You are encouraged to make copies |
| of this program and it's documentation and pass them |
| onto to others - see the text on distribution later in |
| this document. |
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page i
Definition Of Shareware 1
Disclaimer - Agreement 2
Command line parameters 5
Default Usage 5
Generating CRC-32 values (including the /c option) 8
Extracting Files (/x option) 8
Snapshot Directory (/d option) 9
Running under DOSSHELL 9
Output (SNAPSHOT.TXT) 10
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 1
SNAPSHOT is a "shareware program". It is not free or public domain
software and after you have evaluated it for 30 days you are
obligated to register your copy if you continue using it. You are
encouraged to make copies of this program and it's documentation
and pass them onto to others - see the text on distribution later
in this document.
Definition Of Shareware
Shareware distribution gives you a chance to try software before
buying it. If you try a Shareware program and continue using it,
you are expected to register. Individual programs differ on
details -- some request registration while others require it, some
specify a maximum trial period. With registration, you get
anything from the simple right to continue using the software to
an updated program with printed manual.
Copyright laws apply to both Shareware and commercial software,
and the copyright holder retains all rights, with a few specific
exceptions as stated below. Shareware authors are accomplished
programmers, just like commercial authors, and the programs are of
comparable quality. (In both cases, there are good programs and
bad ones!) The main difference is in the method of distribution.
The author specifically grants the right to copy and distribute
the software, either to all and sundry or to a specific group. For
example, some authors require written permission before a
commercial disk vendor may copy their Shareware.
Shareware is a distribution method, not a type of software. You
should find software that suits your needs and finances, whether
it is commercial or Shareware. The Shareware system makes fitting
your needs easier, because you can try before you buy. And because
the overhead is low, prices are low also. Shareware has the
ultimate money-back guarantee -- if you do not use the product,
you do not pay for it.
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 2
Disclaimer - Agreement
Users of SNAPSHOT must accept this disclaimer of warranty:
"SNAPSHOT IS SUPPLIED AS IS. THE AUTHOR DISCLAIMS ALL
WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT
LIMITATION, THE WARRANTIES OF MERCHANTABILITY AND OF
FITNESS FOR ANY PURPOSE. THE AUTHOR ASSUMES NO LIABILITY
FOR DAMAGES, DIRECT OR CONSEQUENTIAL, WHICH MAY RESULT
FROM THE USE OF SNAPSHOT."
SNAPSHOT is a "shareware program" and is provided at no charge to
you for evaluation for 30 days. Feel free to share it with your
friends, but please do not give it away altered or as part of
another system. The essence of "user-supported" software is to
provide personal computer users with quality software without high
prices, and yet to provide incentive for programmers to continue
to develop new products. If you find this program useful and find
that you are using SNAPSHOT and continue to use SNAPSHOT after a
reasonable trial period, you must make a registration payment of
10 UK pounds to K.R.Duncan. The 10 UK pounds registration fee will
license one copy for use on any one computer at any one time. You
must treat this software just like a book. An example is that this
software may be used by any number of people and may be freely
moved from one computer location to another, so long as there is
no possibility of it being used at one location while it is being
used at another. Just as a book cannot be read by two different
people at the same time.
To register your copy of SNAPSHOT complete the document ORDER.FRM
provided with the software and return it to K.R.Duncan at the mail
address provided in the Contact section of this document.
Registration of SNAPSHOT provides you with:
o a copy of the current version of the program or
acknowledgement of your registration if you are registering
the current version.
o a copy of the next version as it is released.
o support via email (CIX & Compuserve) and mail.
o if an email address was provided when you registered then
this will be used to advise you of new versions of the
program as they are released.
When registering please indicate where you obtained SNAPSHOT from
- so that I can ensure that they have the latest version.
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 3
You are encouraged to pass a copy of SNAPSHOT to others for
evaluation. Please encourage them to register their copy if they
find that they can use it. Shareware versions of SNAPSHOT may be
freely distributed, subject to the following restrictions:
o SNAPSHOT must be distributed without modification, in its
entirety i.e. ONLY IF ALL THE ORIGINAL FILES CONTAINED IN
THE ORIGINAL SHAREWARE RELEASE MADE BY K.R.DUNCAN ARE
LEFT TOGETHER, UNCHANGED IN ANY WAY, AND ARE TRANSFERRED
AS A COMPLETE PACKAGE.
o SNAPSHOT may not be listed in advertisements, catalogues,
or in any other manner which describes it as "FREE
SOFTWARE". Shareware is "Try-Before-You-Buy" software, it
is not free.
o SNAPSHOT is not to be used as an enticement to purchase
another product without the explicit consent of the
o SNAPSHOT is not to be "rented" or leased.
These distribution restrictions apply to anyone who wishes to
distribute SNAPSHOT, whether they be commercial vendors, user
groups, BBS operators, or individuals.
Anyone distributing SNAPSHOT for any kind of remuneration must
first contact K.R.Duncan at the mail address given in the Contact
section for authorisation.
SNAPSHOT will be distributed on BBS systems - the uploaded file
will be called SSHOTnnn.ZIP where nnn is the version of the
program e.g. 110 for version 1.10, the extension of the file may
be changed by the BBS to suit the standard archive format for that
BBS - so when searching for SNAPSHOT look for SSHOT*.*.
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 4
This program takes a snapshot of all the files and directories on
your hard disk(s). It is designed to be run before installing a
new software package and again after the package has been
installed. The second time the program is run it will produce a
text file detailing the files and directories that have been
added, changed or deleted which can then be stored as a record of
The prime uses for this are:
a) as a cross check when you want to uninstall the package
that all the appropriate files have been removed.
b) if you experience problems after the installation it can
be very useful to know which of your existing files have
been "touched" by the installation!
c) to inform you when an installation routine has overwritten
some of your files with older copies!
One of the annoying aspects of some installation routines is that
they create and alter files in areas other than that specified -
how many packages have you installed that have altered your
CONFIG.SYS or AUTOEXEC.BAT files without asking for your
SNAPSHOT does not affect the installation in any way, but it will
provide you with a definitive list of all the directories/files
that have been added/modified/deleted by the installation routine.
SNAPSHOT tracks in detail the four most important files for DOS
and Windows users - AUTOEXEC.BAT, CONFIG.SYS, WIN.INI, SYSTEM.INI.
It will show you individual lines altered within those files and
can generate copies of the files BEFORE the installation - whilst
this may not undo all the "harm" that an installation routine has
wrought, it cuts down the amount of work involved in removing a
package or recreating a "runable" system - you should at least be
able to reboot the machine with your old configuration and load
Windows (if you are a Windows user!).
SNAPSHOT is applicable for installation of both DOS and Windows
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 5
Command line parameters
SNAPSHOT [/?] [/c] [/ddirectory] [/e] [/n] [/o] [/x] [ [drive:] ...]
/? display the help screen.
/e Estimate the disk space requirements for the file
containing the snapshot.
/c generate CRC-32 values for all files found - see the
section later in this document for further details of
/d Directory to store all SNAPSHOT files. The directory
specified can include a drive name e.g. C:\TEMP would be
specified as /dc:\temp this can be shortened to /dtemp
if c: is the current drive.
/n Network drives included in search - the default is that
no network drives are included in the snapshot when
using the default search for all drives. Use this option
only to include all network drives with all local drives
- this option is not required if individual drives are
specified as the drives can be either local or network.
/o Overwrite an existing SNAPSHOT.LOG file, specifying this
option always generates a fresh snapshot.
/x eXtract files stored in SNAPSHOT.LOG: CONFIG.SYS,
AUTOEXEC.BAT, WIN.INI and SYSTEM.INI.
drive: specific MS-DOS drive letter(s) - overrides the default
of all hard disks included in the snapshot.
SNAPSHOT can be abandoned at any time during the data collection
phase by pressing the Escape key.
Running SNAPSHOT without any parameters will perform as follows:
If SNAPSHOT.LOG does not exist in the current directory then
all local (i.e. non-network and non-removeable) drives will be
analysed and the results stored in SNAPSHOT.LOG.
If SNAPSHOT.LOG exists in the current directory then all the
drives previously analysed will be analysed again and the
results stored in a temporary file. The two files will then be
compared and a report file (SNAPSHOT.TXT) generated showing the
differences between the two snapshots. The temporary file will
then be deleted.
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 6
SNAPSHOT works by reading the directory structure of each drive to
be analysed then performing a file list for each of the
directories - storing the details of each file and directory found
in a log file for later analysis. In addition SNAPSHOT will
generate a checksum (CRC-32) for the contents of the following
files if they are found during the analysis (you can generate
CRC-32 checksums for all files using the /x parameter):
By default SNAPSHOT stores details of all directories and all
files that are on your hard disk(s) - depending on your hardware
setup this may not be required. The drives analysed by SNAPSHOT
can be specified via the command line - this overrides the
default of every hard disk found.
The first time SNAPSHOT is run it will create a file called
SNAPSHOT.LOG which contains details of all the directories and
files found. On the second and subsequent runs the program looks
for SNAPSHOT.LOG and if found it will perform exactly the same
analysis as originally specified and store the details in a
temporary file. Once the snapshot is complete SNAPSHOT will
analyse the two files in order to produce a list of changes - the
temporary file is deleted after the analysis is complete. Space
must therefore exist to store two copies of the files created by
In order to help determine the disk space required by SNAPSHOT
specify the /e command line parameter - this will not create a
snapshot file but will report the disk space that would have been
required had the same analysis been performed without the /e
parameter. If you are in the fortunate position of having a disk
space to spare then the there is not need to run SNAPSHOT in it's
If your are installing a Windows based package then I would
suggest that you analyse at least a) drive C: b) the drive
containing the Windows system files and c) the destination drive.
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 7
When installing or upgrading a software package SNAPSHOT should be
used as follows:
1) Decide which drives are going to be analysed.
2) Run SNAPSHOT to estimate the disk space required - if you
do not want all drives to be analysed then also specify
the specific drive letters that you want analysed e.g.
snapshot /e c: e: f: g:
3) Ensure that there is enough disk space to hold at least
two copies of the snapshot files - remember that the size
of the file generated after the installation of the
software package will be larger than the initial file.
4) Run SNAPSHOT again to create the initial file
(SNAPSHOT.LOG), use the same parameters as you entered
for the estimate - this time omit the /e parameter. Using
the previous example this would be
snapshot c: e: f: g:
5) Install the package.
6) Estimate the disk space required again to ensure that
enough space exists for the second, temporary, file.
There is no need to specify any drive letters as SNAPSHOT
will analyse the same drives as you specified in step 4.
7) Run SNAPSHOT without any parameters. This run will
analyse the same drives as specified in step 4, storing
the details found in a temporary file. Once the analysis
is complete the stored SNAPSHOT.LOG will be compared
against the temporary file and the differences found will
be written to a file called SNAPSHOT.TXT. This results
file can be examined using any text editor. Any drive
letters entered on the command line will be ignored -
SNAPSHOT will only analyse the same drives as that used
to generate SNAPSHOT.LOG.
8) If you have to perform part of the package installation
again (to load extra drivers etc.) then repeat step 7
after the installation - SNAPSHOT.TXT will be overwritten
with the new results that include the extra installation.
This can be performed as many times as you require.
9) Rename and store SNAPSHOT.TXT as a record of the
installation of the particular package - I would suggest
using your favourite text editor to add some explanatory
text to the file that shows which package/version was
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 8
Generating CRC-32 values (including the /c option)
CRC is an abbreviation of Cyclic Redundancy Check and is a method
of representing the data content of a file in 32 bits (4
characters). SNAPSHOT computes the CRC-32 of a file and stores the
result in SNAPSHOT.LOG. When SNAPSHOT is run again the CRC-32
value for the file is recalculated and compared against the
stored value. If the values differ then the data content of the
file has changed. If SNAPSHOT prints "CRCs differ" then only the
data content of the file has changed - the size, date and time are
CRC-32 is used by programs such as PKZIP to guard against the
archive file being damages; communications protocols such as
Xmodem or Zmodem to ensure that data is transmitted successfully;
and by some of the virus protection programs.
If you chose to generate CRC-32 values for all files (the /c
option) then please bear in mind that every character in every
file has to be read in order to generate the CRC-32 value, in
addition an extra 4 characters for every file will be needed in
SNAPSHOT.LOG to hold the calculated value.
As an example of the relative time involved the following figures
were generated on a 486DX/50 running against a 200Mb drive with an
average seek time of 18ms. 195Mb used in 5,400 files.
snapshot c: /e 7 seconds Estimate only
snapshot c: 21 seconds Default
snapshot c: /c 3 minutes 30 seconds! CRC-32 for all files
Extracting Files (/x option)
On the first run of SNAPSHOT which creates the SNAPSHOT.LOG file
the program will store in the log file the contents of CONFIG.SYS,
AUTOEXEC.BAT and if Windows is installed and specified on the DOS
PATH then copies of WIN.INI and SYSTEM.INI will also be taken.
If, after the installation has been completed, you find that the
above files have been altered "beyond repair" you can recreate the
files by running SNAPSHOT with the /x parameter. This will extract
the contents of the files from the SNAPSHOT.LOG file. All of the
files extracted will have an extension of .SS e.g. CONFIG.SS so
that the original files are not overwritten, the extracted files
will have the same date, time and sizes as the original files.
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 9
Snapshot Directory (/d option)
By specifying the /d option along with an existing directory name
SNAPSHOT will create ALL it's files in the specified directory. If
the directory is secured SNAPSHOT may fail as it creates, deletes,
reads, and writes to files in this directory.
If the extract option (/x) is also specified on the command line
then SNAPSHOT will create the extracted files also in the
Running under DOSSHELL
SNAPSHOT can be executed from DOSSHELL and the output generated
without exiting to DOS. The suggested method is to generate a new
program group for SNAPSHOT along with 3 options in that group as
1) Make a new program group
2) Open the new program group
3) Add program items to the new group
Program Title: Before Install
Commands: snapshot /o
Startup Directory: c:\snapshot
Pause After Exit: Yes
Program Title: After Install
Startup Directory: c:\snapshot
Pause After Exit: Yes
Program Title: View SnapShot Results
Commands: edit snapshot.txt
Startup Directory: c:\snapshot
Pause After Exit: No
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 10
SNAPSHOT.TXT is a straight ASCII text file that can be viewed
using a text editor, or TYPEd from the DOS prompt.
All the differences found are itemised in the file along with a
message that tells you the type of change i.e. Added, Changed,
Deleted. For files that have been changed both the directory entry
before and after the installation are shown - the change could
have been flagged due to the date, time or file size changing.
Where the message is "CRCs differ" then the installation routine
has programatically altered one of the files without changing the
date, time or size of the file.
For those files stored in SNAPSHOT.LOG details of any changes are
shown along with the line numbers in the "old" and the "new" files
so that you can determine the exact changes performed by the
A summary of all the changes per drive along with final totals for
all drives being analysed is shown at the end of the file.
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 11
Registrations should be sent to the mail address given below,
please ensure that you return a completed copy of ORDER.FRM so
that I can provide you with a copy of the latest version of the
program. If you are contactable via email please include those
If you experience problems running this program or have any
comments or suggestions for future releases please let me know via
any of the following contact points.
Mail: Kev Duncan
43 Primrose Crescent
BBS: Northern Lights
+44 (0) 91 548 0892
2400bps (at the moment!) 24hrs
Internet: [email protected]
or >INTERNET:[email protected]
Prestel MBX: 011111100
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 12
v1.10 - 06 Apr 93
Dates, times and file sizes are now formatted using the country
information provided by DOS.
Provide an itemised list of the individual changes in any of the
four standard files.
New option to generate CRCs for all files (/c).
New option to overwrite an existing log file (/o).
New option to generate all files in a specific directory (/d).
Bug: Drive display now caters for drives with capacities > 1Gb.
Bug: When generating an estimate previous versions of the program
were calculating CRCs - even though they were not being used.
Generation of an estimate is now considerably faster!
Bug: Estimates generated were one byte too small.
Bug: Change to memory usage to prevent the program hanging in
Bug: Correct problem when volume label contained a period (".").
v1.04 - 25 Feb 93
Store copies of CONFIG.SYS, AUTOEXEC.BAT, WIN.INI and SYSTEM.INI
New option to extract these saved files from the log (/x) thus
recreating the files as they were before the installation (with
their original date and time stamps).
v1.03 - 14 Dec 92
Bug: Identify CD-ROM drives and ensure that any CD-ROM drives are
excluded from a snapshot.
v1.02 - 02 Aug 92
Bug: Intercepts the "Abort, Retry or Fail", messages when the drive
being checked was unavailable e.g. powered off. The drive is
now treated as unavailable and is excluded from the search.
Useful for network users that have "missing" drive letters
SNAPSHOT Version 1.10, Copyright 1992, 1993 by K.R.Duncan. Page 13
v1.01 - 14 Jun 92
Provide warnings when the software being installed has overwritten
a file with an older copy.
Bug: When all the defaults were taken the drives scanned on the
first pass were not been saved in the log file - so that on
the second and subsequent runs no files were scanned and the
results were garbage.
v1.00 - 04 Jun 92