By Dana Daugherty
Windows Installer is fast
becoming the application installer of choice in the IT industry. This article
provides an overview of the basic workings of this new technology.
Windows Installer is an
operating-system service that is responsible for installing, repairing and
removing software. It is difficult these days to find any off-the-shelf software that does
not utilize Windows Installer technology. It is becoming a software installation
standard within the information technology industry. Benefits of Windows
Installer include
-
Proper
management of shared resources
-
Improved
methods for enforcement of installation rules
-
On-demand installation of entire applications or application components
-
Much cleaner removal
of software
-
Better rollback support for failed applications
Windows Installer is
comprised of these components:
An
operating system-resident installation service.
Prior to Windows Installer, installation programs used their own setup executables
or scripts. Each application vendor was responsible to obey the proper
installation rules; however, these rules were subjective because there was no standard.
A
standard format for component management. Other installation technologies use scripts to deliver files, registry
keys and other resources. Windows Installer processes applications information
as a hierarchy of logical building blocks:
-
Products
Are
applications, each contained in their own package file. The package file will
have an extension of .msi.
-
Features
Are
roughly mapped to those features that are available when a user selects a
custom installation using the Windows Installer interface.
-
Components
Are
a collection of installable resources. Windows Installer manages component
level rather than at the resource level. This gives better control over all
resources. It also provides the ability for shared resources to be better
managed. Former installer technologies did not have the ability to manage
shared registry keys. Resources are owned by components. Resources belonging
to the same component must be installed our uninstalled together.
Installable
resources include:
-
Files
-
Registry
keys
-
Keypaths
are the locations to key files.
Key files provide necessary information about resources for applications
that are being installed. Keypaths are centrally managed by the Windows
Installer service.
-
Component
Code is a unique ID assigned to a
specific component. Because of this globally unique code, components can be
shared among multiple applications.
A
management API for application tools.
The management API exists to allow Windows Installer to manage all file paths
for applications written to support Windows Installer. Because of this, other
software features are supported such as:
-
Install
on demand: feature level allows
application features to be installed when needed without the need to re-run
the installation setup program.
-
Install
on demand: product level is
supported by Windows 2000/XP only. This feature allows for programs to be
installed when an icon is run from the desktop or from a Windows Programs
group. This feature is also said to be advertised.
-
Runtime
Resource Resiliency In the IT
world this feature has been referred to as self-healing and dynamic repair.
Distributing the
Windows Installer Service
Before distributing Windows Installer-based software to client machines
using SMS, the machines must have the Windows Installer service installed.
Windows 2000/XP both ship with Windows Installation integrated with the
Operating System. The new technology can be installed on Windows 9x/NT by
distributing these installs:
Windows
Installer 2.0 for Windows 9x/ME
Windows
Installer for Windows NT 4.0
The Windows Installer Package
File
Windows Installer products
are each described by package files. The package files are in a database format
that has been optimized for installation performance. The package file for a
given product describes any necessary installation instructions. The Windows
Installer service relies on Msiexec.exe to interpret the package file. The
package file has an extension of .msi and replaces the former .stf, .inf and .lst
extensions from previous Windows based installers. In order to make all of the
Windows Installer features available to an organization, an administrative
installation must be installed. Features such as install on demand, run-time
resource resiliency and run from the network all require an administrative
installation. To create an administrative install:
1.
Copy the contents of the CD to a network share.
2.
The installation syntax for creating an administrative installation is as
follows:
Msiexec
/a
is the .msi responsible for installing the product.
3.
The administrative share will appear in the same folder that contain the
CD install with the folder name of Admin.
Look for my next Windows
Installer article to address command-line syntax and popular customizations.
Dana Daugherty is a senior systems engineer, an SMS administrator and a columnist for Swynk.com. He can be contacted at danadaugherty@yahoo.com.
This column was first published on Swynk.com, an internet.com site.