Project 2000. Windows Installer, страница 7

Using Switches, Properties, and *.ini Files

Suppose, however, that these two departments need to use a common set of custom options, except that each needs a different organization name. Then it is possible to customize the default settings file (Setup.ini) with the standard options, and then the Engineering and Accounting departments use the following command lines to run Setup:

setup.exe companyname="Engineering Department" /settings off9engr.ini

setup.exe companyname="Accounting Department" /settings off9acct.ini

Setup uses the options defined in the settings file and sets the organization name according to the command line.

Windows Installer

During the course of its operation, SETUP.EXE looks for the installation of Windows Installer (MSIEXEC.EXE). If it is already installed on the system, SETUP.EXE calls upon MSIEXEC.EXE, passes on any switch, property and .INI information, and the installation proceeds on to the second phase of the installation process.

SETUP.EXE will use the Windows Installer currently on the system, regardless of the application from which it was installed. For example, if Office 2000 is already on the system, Project will simply use the Windows Installer placed on the system at that time, rather than install Windows Installer again. The reason for this is that Windows Installer is an operating system “service” that allows the operating system to take over the installation process. Of the current operating systems, only Windows 2000 ships with this service pre-installed. Therefore, it is necessary to install the Windows Installer files on Windows 95/Windows 98 and Windows NT 4.0 before Microsoft Project 2000 installation can proceed.

If Windows Installer is not detected, SETUP.EXE installs it. On Windows 9x platforms, this is done using the file INSTMSI.EXE. On Windows NT platforms the file INSTMSIW.EXE is used.


The Windows Installer Package: INSTMSI(W).EXE

Both INSTMSI.EXE & INSTMSIW.EXE files are IExpress packages that decompress the complete list of Windows installer files to a new directory within the temp directory. The name of this directory usually is of the form IXP###.tmp, for example: IXP001.tmp.

A complete list of Windows Installer files is presented in the following table:

Windows installer File

Notes

MSI.DLL

This is the main Windows installer engine .DLL. Contains all the functions that the installer uses to install and manage applications.

MSIEXEC.EXE

The Service used to control .MSI package setups.

MSIHND.DLL

The installer handler .DLL. It is responsible for the behavior of the user interface of the installer

CABINET.DLL

Always installed since later installs may have compressed cabinets.

MSPATCHA.DLL

System .DLL needed by the installer to support its file patching capabilities.

SHFOLDER.DLL

Exposes API's to create special shell folders for Windows 2000.

IMAGEHLP.DLL

Except on Windows 98 where it is already present.

RICHED20.DLL

Renders text and handles user input and navigation through languages such as Arabic, Hebrew, Thai, Vietnamese and Indic.

MSLS3.DLL

Support file for RICHED20.DLL.

USP10.DLL

Support file for RICHED20.DLL.

MSIINST.EXE

Part of the IExpress package that gets expanded with the installer files. Handles installation of the Windows Installer files, then is deleted.

Once the files are expanded, INTSMSI.EXE calls on the internal file MSIINST.EXE to install the Windows Installer files. MSIINST then performs the following steps:

n  Checks the platform and the version of the files to be installed. On incompatible platforms, the message box below will appear.