ServersWindows Installer Foundations

Windows Installer Foundations

ServerWatch content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.





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 fast becoming
the application installer of choice in the IT industry. Dana
Daugherty’s latest 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 package.msi where package.msi
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.

Get the Free Newsletter!

Subscribe to Daily Tech Insider for top news, trends & analysis

Latest Posts

Related Stories