Roadmap to Windows Installer Documentation

This documentation is the primary source of reference material for Windows Installer. It provides information about installation packages and the installer service. It also provides complete descriptions of the application programming interface (API) and the elements of the installer database. This documentation also contains a discussion of basic examples of installation and update packages in Windows Installer Examples.

The Role-based Guide to Windows Installer Documentation is an alternative provided as a guide to readers that prefer to see links to topics organized by professional role and common task scenarios.

For information about Windows Installer newsgroups see also the topic: Other Sources of Windows Installer Information.

For a list of tips on using the Windows Installer, see Windows Installer Best Practices.

The following list describes each section of the installer documentation.

  • About Windows Installer provides an overview of installer capabilities and benefits, such as advertisement, installation-on-demand, resiliency, customization, and component management. This section introduces the concepts of installer components and features, which are essential to understanding how the installer organizes an installation. It also discusses several high-level subjects about installation, such as System Policy, File Versioning Rules, and Rollback Installation.
  • Using Windows Installer discusses a variety of topics, such as a standard method for organizing an application into components that the installer can install or remove from a user's computer; how to download an installation package from the World Wide Web; and using compressed source images.
  • The information in the What's New in Windows Installer sections can be used to identify new features that are not supported by earlier Windows Installer versions.
  • Digital Signatures and Windows Installer describes how digital signatures can be used with packages, transforms, patches, merge modules, and external cabinet files.
  • Assemblies explains how to use Windows Installer to install and manage common language run time and Win32 assemblies.
  • User Interface gives information about the installer's user interface capabilities. Although the installer does not provide a user interface, a package author can keep all the data and logic required to run a fully interactive internal or external user interface in the installation database. The Reference section describes elements of the user interface that are specifiable in the database tables, including dialog boxes, controls, and control events.
  • Standard Actions discusses the standard actions used by the installer in the sequence tables to perform an installation. This information is intended primarily for package developers.
  • Custom Actions describes how to create additional functionality in the installer. Custom actions enable an author of an installation package to extend the capabilities of standard actions by including executables, dynamic-link libraries, and script. This information is intended for package developers who need to perform installation functions not found elsewhere in the installer.
  • Properties gives information about the properties the installer uses during an installation. The About and Using sections gives an overview of these global variables and each property is described in the Reference section.
  • Summary Information Stream documents the summary information properties used by the installer. This information is of interest to all developers.
  • Patching and Upgrades discusses using the installer to perform file updates, QFEs, minor updates, product upgrades, and patching.
  • Transforms explains how to alter or customize an installation database using a database transform and how to generate, secure, and apply transforms.
  • Package Validation discusses using Internal Consistency Evaluators (ICEs) to test the internal consistency of installation packages that are under development.
  • Merge Modules presents a standard for the design of merge modules. This standard should be followed by developers who are creating their own merge modules as well as by developers who plan to use the installer to deliver shared code to their applications.
  • Windows Installer on 64-bit Operating Systems discusses how to use Windows Installer to install and manage installer components designed to run on 64-bit operating systems.
  • Windows Installer Examples includes a step-by-step example of creating an installation package with an internal user interface in An Installation Example. For an example of authoring a major upgrade for an existing package, see An Upgrade Example. To learn how a customization transform disables features and adds new resources, see A Customization Transform Example. For an example of creating a patch package that applies a small update to an existing installation package, see A Small Update Patching Example. To learn how to localize an existing installer package, see A Localization Example.
  • Automation Interface provides information to developers who want to use the automation interface of Windows Installer.
  • Installer Functions describes function calls to the installer API. These are the functions that other applications call to access the installer services to install, maintain, or remove applications. The Using sections include discussions about how to request features, initiate installations, and reinstall missing components programmatically. The Reference section is the primary reference material for the installer service functions.
  • Installer Database discusses the installation database. The installer keeps all of the logic and data necessary for an installation in a relational database located in an .msi file. The About section provides an overview with schema diagrams for the major functional groups of tables of the database. The Using section discusses working with the most important of these tables. These sections contain information that is essential to developers who are authoring installation packages or writing package creation tools. The Reference section contains complete reference material for each database table. This section also contains the primary reference for each of the database functions. The database functions are used internally by the installer to access the database and are primarily of interest to developers of installer package creation tools.