SITools Installation Suite
Read Me Document

Contents

» Contents

Description

SIBuilder (Small Installation program Builder) is a software installation program creator that creates a stand alone executable software installer with little overhead taken up by the installer. This makes the program ideal for creating a single, self-extracting installation program for distribution over the Internet. SIBuilder is part of the SI Tools suite of programs and libraries. The other programs in the suite are either used to perform the installation and uninstallation of projects created with SIBuilder or are extra, bonus, programs.

To keep down the overhead required for the Installer and the optional uninstall program SIBuilder creates these programs as Windows console applications.

The user specifies the files to be installed which are compressed before being compiled into the installer. Different installation folders can be specified for various groups of files. The registry can be updated with the required keys and data. The installer can run one or more external programs after the files have been copied and the installation completed. The install program can be configured to run differently on specified operating systems.

An uninstall program can optionally be created and installed. If this is done the installed program appears in Control Panel's "Add/Remove progams" applet and the installed program can be uninstalled from there. The un-installer optionally deletes files and folders that were installed and can tidy up the registry. It can also run other programs (before any deletion or registry tidying) and may unregister COM servers registered by the install program.

A license dialog box that can be displayed and the user can be required to accept the license before installation begins.

Applications and DLLs can be registered with Windows, as can COM server DLLs.

A small console application that can create shortcuts (shell links) is provided. This program can be executed as part of an installation to create the required shortcuts. The same program can be used by the un-installer to remove the shortcuts.

Information needed to create an installation project is entered using a wizard style interface. Project information can be stored in and read from .sip project files.

» Contents

Compatibility

SIBuilder has been tested with Windows XP Pro and Window Vista Home Premium. It is believed to operate on the Windows 9x and NT platforms from NT4. From version 3.4.1 the program and the installers operate on Windows Vista.

The various programs require different privilege levels on NT platform OSs as the following table shows:

Program Windows NT, 2000 and XP Windows Vista
SIBuilder Operates normally, with standard user privileges. Operates normally, with standard user privileges.
Generated installers and UnInstall The install and uninstall programs usually need to be run with power user or administrator privileges since they need access to protected areas of the file system and registry. Installations may fail if run at the wrong privilege level. These programs will request to be run as administrator and also require elevation. Starting the programs from a standard user account will require an admin password.
Shortcutter Operates correctly when run from the installer, providing the installer has the correct privileges. The program may fail when run stand-alone as a standard user if used to create shortcuts in protected areas of the file system. Operates at the privilege level of the invoking program. This works fine from the installer. The program may fail when run stand-alone as a standard user if used to create shortcuts in protected areas of the file system. It will not request an enhanced privilege level in this case.
RegInprocSvr Must be run with admin privileges in order to register COM servers in the registry. Registration fails when run as a standard user. Requests admin privileges and elevation when run. Starting the program from a standard user account will require an admin password.

» Contents

Installation and Removal

Installation

SIBuilder is provided in a self-extracting install program – SIB3Inst.exe. The installation program is a console application that executes in a terminal window. SIBuilder was in fact used to create its own installation program – so if the installation succeeds you know that SIBuilder works! SIB3Inst.exe may be distributed within a zip file, along with this file. If this is the case, unzip the .zip file and then execute SIB3Inst.exe.

To install the program simply navigate in Explorer to where you downloaded or extracted SIB3Inst.exe and double click the file.

Windows Vista: You will be asked to confirm the operation and may need to provide an administrator password.
Windows NT, 2000, XP: You need to ensure you have administrator privileges. You will not be warned. The installation will simply fail.

The installer will open a console and will display its welcome message before pausing for you to enter an installation path. Either press return to accept the suggested path or enter the required path and press return. The license agreement will then be displayed. Click the Accept button to continue. Clicking Decline will abort the installation.

By default SIBuilder is installed into the DelphiDabbler\SIBulder3 sub-folder of your Program Files folder, and most files are installed there or in sub-folders. Some files are also installed in a DelphiDabbler sub-folder of the system's Common Files folder. Details of installed files are provided in File Manifest.txt which is installed in the Docs sub-folder.

SIBuilder stores its configuration information in two registry keys:

  1. Fixed application configuration information is stored in sub-keys under HKLM\SOFTWARE\DelphiDabbler\SITools\3.0\SIBuilder
  2. User configurable settings are stored on a per-user basis in sub-keys under HKCU\Software\DelphiDabbler\SITools\3.0\SIBuilder

A shortcut to SIBuilder is created on the desktop.

Note: The installation program will uninstall any previous SIBuilder 3 versions before proceeding with the installation of this version.

Removal

To uninstall SIBuilder use Control Panel's Add/Remove Programs applet.

Windows Vista: You will be asked to confirm the operation and may need to provide an administrator password.
Windows NT, 2000, XP: You need to ensure you have administrator privileges. You will not be warned. The uninstallation will simply fail.

To take care of uninstallation on behalf of Add/Remove programs SIB3Inst.exe installs a console based uninstall program (UnInstall.exe) into the root installation folder (DelphiDabbler\SIBuilder3 in the Program Files folder by default). This program requires a data file – UnInstall.xml and a DLL – InstallLib.dll – which are also installed in the same location. Care should be taken not to move or delete these files as they are required by Add/Remove programs.

UnInstall.exe deletes most files, the desktop shortcut, and cleans the registry. However, UnInstall.exe can't delete itself or InstallLib.dll. Once SIBuilder has been uninstalled it is safe to manually delete these files along with the installation folder.

SIBuilder stores default project information in a sub-folder of the user's application data directory. The uninstaller does not remove this data. It can be safely removed manually.

» Contents

Known Issues

A complete list of bugs and fixes can be seen at http://www.delphidabbler.com/software/sib/bugs.

» Contents

Update History

The program's update log is available at http://www.delphidabbler.com/software/sib/log.

» Contents

License and Acknowledgements

1. Definitions

In this document the following definitions apply:

  1. "Product" means DelphiDabbler SIBuilder and related documentation.
  2. "Author" means the author and copyright holder of of the software, that is Peter D Johnson, http://www.delphidabbler.com.

2. Introduction

A source code version of some of DelphiDabbler SIBuilder's functionality that you may use, modify and distribute is available to you free of charge from http://www.delphidabbler.com under the Mozilla Public License and other open source software licenses. The Mozilla Public License can be found at http://www.mozilla.org/MPL/.

The accompanying executable code version of the Product is made available to you under the terms of this end user license agreement. By installing or using DelphiDabbler SIBuilder you are consenting to be bound by the agreement. If you do not agree to the terms and conditions of this agreement do not install or use any part of DelphiDabbler SIBuilder.

DelphiDabbler SIBuilder is copyright © 2000-2008 by Peter D Johnson, http://www.delphidabbler.com.

3. License Grant.

The Author grants you a non-exclusive license to use the executable code version of DelphiDabbler SIBuilder. You may install as many copies of the program as you wish and may distribute the program providing this license agreement and any other copyright or legal notices are distributed with the Product.

This agreement will also govern any software upgrades provided by the Author that replace and/or supplement the original Product, unless such upgrades are accompanied by a separate license, in which case the terms of that license will govern.

4. Termination.

If you breach this Agreement your right to use the Product will terminate immediately and without notice, but all provisions of this agreement except the License Grant (Section 3) will survive termination and continue in effect. Upon termination, you must destroy all copies of the Product.

5. Proprietary Rights.

Portions of the Product are available in source code form under the terms of the Mozilla Public License and other open source licenses from http://www.delphidabbler.com. Nothing in this agreement will be construed to limit any rights granted under the Open Source Licenses. Subject to the foregoing, the Author, for himself and on behalf of his licensors, hereby reserves all intellectual property rights in the Product, except for the rights expressly granted in this agreement. You may not remove or alter any copyright or other proprietary notice in or on the Product.

6. Disclaimer Of Warranty.

THE PRODUCT IS PROVIDED "AS IS" WITH ALL FAULTS. TO THE EXTENT PERMITTED BY LAW, THE AUTHOR HEREBY DISCLAIMS ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION WARRANTIES THAT THE PRODUCT IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE AND NON-INFRINGING. YOU BEAR ENTIRE RISK AS TO SELECTING THE PRODUCT FOR YOUR PURPOSES AND AS TO THE QUALITY AND PERFORMANCE OF THE PRODUCT. THIS LIMITATION WILL APPLY NOTWITHSTANDING THE FAILURE OF ESSENTIAL PURPOSE OF ANY REMEDY. SHOULD THE PRODUCT PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

7. Limitation Of Liability.

EXCEPT AS REQUIRED BY LAW, THE AUTHOR AND HIS LICENSORS, CONTRIBUTORS AND DISTRIBUTORS WILL NOT BE LIABLE FOR ANY GENERAL, INDIRECT, SPECIAL, INCIDENTAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES ARISING OUT OF OR IN ANY WAY RELATING TO THIS AGREEMENT OR THE USE OF OR INABILITY TO USE THE PRODUCT, INCLUDING WITHOUT LIMITATION DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, LOST PROFITS, LOSS OF DATA, AND COMPUTER FAILURE OR MALFUNCTION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES AND REGARDLESS OF THE THEORY (CONTRACT, TORT OR OTHERWISE) UPON WHICH SUCH CLAIM IS BASED.

8. Miscellaneous.

This Agreement constitutes the entire agreement between the Author and you concerning the subject matter hereof, and it may only be modified by a written amendment signed by the Author.

Except to the extent applicable law, if any, provides otherwise, this Agreement will be governed by the laws of the United Kingdom.

Acknowledgements

The following 3rd party code was used in creating the compression DLLs:

Several of the author's freeware components were also used to create SIBuilder.

All the programs and libraries were created using Borland Delphi 7 professional.

All registered trademarks are acknowledged.

» Contents

About the Author

I'm Peter Johnson, a hobbyist programmer living in Ceredigion in West Wales, UK writing mainly in Delphi.

If you have any comments about this program, or if you have found a bug, please let me know. You can contact me via my website contact page.