Deployment Solution
230
Software Packaging
z
A set of guidelines.
z
An Application Programming Interface (API).
z
A runtime service that makes application installation and management part of
Windows services.
Windows Installer is not a installation authoring tool, but rather an installation engine
and rule set.
The Windows Installer engine resides on the destination computer as part of the
operating system. Instead of an installation executable (such as setup.exe), the
Windows Installer executable (msiexec.exe) reads the installation database (.MSI)
which contains instructions and installation files. The .MSI uses highly structured,
uniform data tables. There is 100% accountability of where each file installs and a
thorough log of which files belong to which applications, so individual files are restored
to repair damaged applications.
Each table contains different installation information such as Class, Components,
Features, Files, Execution Sequence, and Registry. Logic built into the Windows Installer
engine prompts for a reboot, checks disk space, and follows file-version-replacement
rules. When opening an .MSI, msiexec.exe reads the database and builds a transaction
list that it follows to complete the installation. If the installation fails, Windows Installer
performs a rollback, which returns the computer to its previous state.
Advantages of Windows Installer
Before Windows Installer, every software application had its own setup executable file
(usually setup.exe or install.exe). Although many software manufacturers used common
installation tools like Wise Installation System, others used highly proprietary
installation technologies. This made the user’s experience inconsistent from one
installation to the next, and the operating system had to contend with redundant code in
different applications. Applications could not be administered after installation, except to
rerun the setup program.
Windows Installer implements a single built-in execution engine and replaces the
installation executable with a database file (.MSI). The database stores the application’s
program files and setup instructions and can readily access this information if the
application requires maintenance.
Using Windows Installer results in a solid, robust installation that reduces the total cost
of ownership and enables compliance with the Microsoft rules for software installation.
Because Windows Installer is part of the operating system, it provides benefits that are
unavailable in traditional installation technology.