Softscan - Workstation Software Scanner Version 1.1.2.1
-----------------------------------------------------------
By C.M.Harding  May 2001

Sorry. There is no help file yet so this readme is it.
Please read all of this readme.txt file before commencing installation.

Installation of this software is completely harmless. No registry or other computer settings are altered, except the installation path to allow the uninstaller to complete.



Features
--------
*Scanning of network workstation registrys to determine installed software.
*Verification of EXE file existance
*Optional Stealth mode scanning
*Optional hard drive scanning to report all EXE files (not recommended)
*Requires no client setup installation
*Nominated applications can be ignored during the scan for cleaner reporting
*Controlled execution time similar and complementary to ZENWORKS distribution setting
*CSV output dump
*Most importantly it's FREE

Operational Overview
--------------------
The application consists of 2 main modules SOFTSCAN.EXE and SOFTADMN.EXE.
The application should be installed to a network drive. Only one installation is required for admin purposes. The installation will add components on this workstation to allow the Borland Database Engine to run. SOFTADMIN will only run from that station.
If a sub-directory of SFS exists in the installation dir then this dir will be used for the sfs files rather than the installation dir. The SFS directory is created during installation.
This dir is the only one that needs write access by everyone.


SOFTADMIN and SOFTSCAN have been tested on WIndows 2000, NT, 95 and 98. They do not work on Windows 3.x


The SOFTADMN utility is run first to set up distribution, stealth mode, exe scanning and any applications that should be ignored.

SOFTSCAN then needs to be executed on each station. As I originally intended to write this software for myself, I was going to use the distribution features of ZENWORKS to force execution of the software during login. The software was written with this in mind. However it should work with other distribtion software or incorporated into the users login script. 
Leaving the distribution field in SOFTADMN empty will cause SOFTSCAN to run every time the user logs in. Making or changing an entry in the distribution will cause SOFTSCAN to run once and not run again until the distribution field is changed. Using this method SOFTSCAN can happily reside in the users login script. See later for info using the forced-run distribution of ZENWORKS

SOFTSCAN writes files to the SFS or the installation directory with an extention of SFS. The file name is the computer name found in the registry.

When SOFTADMN is run again it compiles all the SFS files in the directory into the database, then deletes the SFS files. With a large amount of SFS files the startup after a scan may take some time.


SOFTADMN Details
----------------
SOFTADMN consists of a 2-tabbed form, "Logged Results", and "Scan Setup"

LOGGED RESULTS TAB
The Logged results tab contains a Borland Database Engine generated table (i.e. Paradox) of the results. 
The column labeled "UserName" is actually the computer name, or the name of the SFS file imported.

The Maker and Application names are taken from the registry key HKEY_LOCAL_MACHINE\SOFTWARE. This was used instead of the Uninstall registry key. The uninstall key is rarely a complete list of software as some software contains no uninstall information. Using the SOFTWARE key instead however, also results in a lot of garbage as some software installations are not consistant with the format of the registry values. Microsoft office is one of those. Depending on the version and actual installation type you may only get a result that displays Office and a version number, without any details of the applications included in the version of office. There is also no exe file associated with "Office" so the existance cannot be verified on the hard drive. Special treatment is given to the components that make up "Office".

The verification and AppPath fields will only be correct if you have set up application names with their corresponding exe files. See later. Generally if no verification has been performed the verification will be 0.

Right-clicking a record allows you to delete a record or every occurance of the Application in the database, and optionally add the application to the ignore list for future scans.
The only other things you can currently do with the results is view them, write them out to a Comma Delimited file, and empy the table. 

The comma delimited file is created by pressing the CSV button, and creates a file called DATADUMP.CSV in the installation directory.
It is not necessary to empty the table before another scan is started. Existing entries for the computer name are deleted during the import of another SFS file of the same name.




SCAN SETUP TAB

Distribution Field:
If the distribution field is left empty and SOFTSCAN is in the users login script to run at every login, then the scans will be performed at every login. If anything is entered into the distribution field then a scan will be run at the next login, but will not run again until the distribution field is changed.
The following are the results of applying the distribution field along with the ZENWORKS Distribution field (using ZENWORKS Run Once setting).
SOFTADMN Distribution	|ZENWORKS DISTRIBUTION	|Initial run	|Following runs
------------------------|-----------------------|---------------|--------------
cleared                 |cleared                |scan           |scan
cleared                 |not empty              |no scan        |no scan
cleared                 |changed		|scan           |no scan
not empty               |cleared                |no scan        |no scan
not empty               |not empty              |no scan        |no scan
not empty               |changed                |no scan        |no scan
changed                 |cleared                |scan           |no scan
changed                 |not empty              |no scan        |no scan
changed                 |changed                |scan           |scan


Use Ignore List Checkbox:
Ticking this box will cause the applications listed in the left-hand list to be ignored during the next scan. The entry of applications is from the Maker and Application Name fields at the bottom of the form. The Maker and Application name must be exactly as they appear in the AppMaker and AppName fields of the results table. These can also be added by right-clicking an entry in the results table.

Stealth Mode Checkbox:
Ticking Stealth mode will prevent any messages appearing on the client workstation during scanning. 

Scan Drives for EXE Files Checkbox:
Tick this option if you wish a complete scan of local hard drives to be performed after registry scanning. I do not recommend doing this unless you have particular DOS applications you are looking for. Scanning entire large drives for executables takes a considerable amount of time and impacts on the performance of the station during scanning. The results are mostly rubbish anyhow, with the majoraty of applications coming from the Windows directory or silly exe files that only form part of an application.

Application Executable names:
The list of EXE names in the listbox on the right of the form are the associations between application names (as shown in the AppNames field of the results table) and the actual EXE names. This is used to determine the location of the exe file on the hard-drive for verification of its existance in both the registry and on disk.
These associations are not absolutely necessary. If you wish the drive verification to work the associations must be made, however the presents of an application in the registry may be sufficent to investigate that workstation further. I have entered some defaults in, however it is quite a long process to set them all up.

All settings for SOFTADMN are in SOFTSCAN.INI and can also be modified from there (with great care as there is little error checking on the ini file).



Installation
--------------
Installation is simply.
1. Extract all files to a tempory location
2. Run Setup.exe from the temp location
3. The default directory is C:\SOFTSCAN. This should be changed to a network location.
4. Ensure that the SFS directory created is read and writable by all workstations. The main install directory only need read rights.
4. Run Softadmin


ERROR Reporting
---------------
I'd appreciate any feedback, errors, or suggestions for improvement. Like what types of reports should there be.

