Designing InstallShield Prerequisites and Other Redistributables

InstallShield 2020

InstallShield provides many third-party redistributables that you can incorporate into projects as InstallShield prerequisites, merge modules, and InstallScript objects. You can also create your own redistributables and distribute them to other installation developers. The following sections describe each of these types of redistributables.

InstallShield Prerequisites

Project:The following project types include support for InstallShield prerequisites:

Basic MSI
InstallScript
InstallScript MSI

InstallShield also includes support for including InstallShield prerequisites as packages in Advanced UI and Suite/Advanced UI projects. For more information, see Including InstallShield Prerequisites (.prq) in an Advanced UI or Suite/Advanced UI Project.

An InstallShield prerequisite is an installation for a product or technology framework that is required by your product. Some examples of InstallShield prerequisites that are included with InstallShield are Java Runtime Environment (JRE) and SQL Server Express Edition. You can add any of the existing InstallShield prerequisites to your installation projects and configure many of their settings. You can also create your own InstallShield prerequisites, and add them to your projects.

Project:In Windows Installer–based installations, including InstallShield prerequisites in your project enables you to chain multiple installations together, bypassing the Windows Installer limitation that permits only one Execute sequence to be run at a time. The Setup.exe setup launcher serves as a bootstrap application that manages the chaining.

Note:Unlike Windows Installer 4.5 chaining, the InstallShield prerequisite installations are not processed as a single transaction; that is, successful installations are not rolled back after failures in later prerequisites. To learn more about Windows Installer 4.5 chaining support, see Configuring Multiple Packages for Installation Using Transaction Processing.

For information on configuring the settings for the InstallShield prerequisites that are available in InstallShield, as well as details on how to create your own InstallShield prerequisites, see Defining InstallShield Prerequisites.

Types of InstallShield Prerequisites

When you add an InstallShield prerequisite to a Basic MSI, InstallScript, or InstallScript MSI project, it is considered to be the setup prerequisite type of InstallShield prerequisite by default. That is, it is treated as a base application or component that must be installed on the target machine before your product can be installed. The installation for a setup prerequisite runs before the main installation runs if the prerequisite is not already installed on the system.

Basic MSI projects enable you to associate InstallShield prerequisites with features in your main installation. When an InstallShield prerequisite is associated with one or more features, it is called a feature prerequisite; it is installed if one or more features that contain the prerequisite are installed at run time and if the prerequisite is not already installed on the system. Thus, if a feature has a condition that is not met on the target system, or if the end user chooses not to install the feature, the feature is not installed. As a result, none of its associated feature prerequisites are installed, unless the feature prerequisites are also associated with other features that are installed.

To learn more about these two types of InstallShield prerequisites, see Setup Prerequisites vs. Feature Prerequisites.

Merge Modules

InstallShield enables you to create your own merge modules that can be used in any of your installation projects or distributed for use by other installation developers.

To learn more, see Designing Merge Modules.

Note:Many of the merge modules included in the Redistributables view are authored by Microsoft or another third party. InstallShield distributes these modules as a courtesy to assist you in creating your installation project. However, InstallShield cannot modify or fix any problems that may exist within third party-authored modules. You are encouraged to contact the vendor regarding issues with specific third party-authored modules.

InstallScript Objects

InstallShield enables you to create your own InstallScript objects that can be used in any of your installation projects or distributed for use by other installation developers.

To learn more, see Creating InstallScript Objects.