Run-Time Behavior for an Installation that Includes InstallShield Prerequisites

InstallShield 2013 Express Edition

Tip: To learn about the differences between setup prerequisites and feature prerequisites (which are the two types of InstallShield prerequisites), see Setup Prerequisites vs. Feature Prerequisites.

Overview of an Installation that Includes InstallShield Prerequisites

The following procedure explains what typically occurs at run time when an end user launches an installation that includes setup and feature prerequisites.

1. The setup launcher (typically called Setup.exe) displays the language selection dialog if appropriate.
2. The setup launcher displays the setup prerequisite dialog and launches the setup prerequisite installations if appropriate.
3. The installation displays the installation UI, which may allow the end user to select features or configure items. The installation UI shows a progress dialog.
4. The setup launcher launches the feature prerequisite installations if appropriate:
a. The built-in InstallShield custom action ISInstallPrerequisites, which is scheduled between the SetupProgress dialog and the ExecuteAction action, compares the features that were selected for installation against the list in the Windows Installer property IsPrerequisiteFeatures. If there are no matches, no feature prerequisites are installed.
b. The ISInstallPrerequisites action attempts to find and launch the setup launcher, and it provides the list of features that are being installed. The path to the setup launcher is identified by the Windows Installer properties SETUPEXEDIR and SETUPEXENAME:

[SETUPEXEDIR]\[SETUPEXENAME]

If ISInstallPrerequisites cannot find the setup launcher in that location, it searches elsewhere. For a first-time installation, ISInstallPrerequisites checks SourceDir. For maintenance mode, ISInstallPrerequisites checks paths that are related to the installation source path.

If ISInstallPrerequisites still cannot find the setup launcher, or if it finds multiple .exe files, the installation prompts the end user to browse to the setup launcher file. If the end user identifies the file, the installation continues. Otherwise, the installation ends.

c. The setup launcher evaluates the list of features to select which feature prerequisites to install, and it launches their installations as appropriate.
5. The installation finishes making changes on the target system according to the end user’s selections.
6. The installation switches from the progress dialog to the Setup Complete Success dialog.

The User Interface for an Installation that Includes InstallShield Prerequisites

If a target system needs one or more setup prerequisites to be installed, the setup launcher typically displays the setup prerequisite dialog before the main installation starts. This setup prerequisite lists all of the nonhidden setup prerequisites that are missing from the target system. When an end user clicks the Install button on this dialog, the setup launcher launches the necessary setup prerequisite installations. If one or more of the setup prerequisites is marked as requiring administrative privileges and the installation is run on a system on which User Account Control (UAC) is enabled, the Install button on this dialog has the shield icon to alert the end user that elevated privileges are required.

Sample Setup Prerequisite Dialog that Shows the List of Setup Prerequisites that Need to Be Installed

If a setup prerequisite is configured to be hidden, it is not listed in the setup prerequisite dialog, but it is still installed. If all of the setup prerequisites in an installation are hidden, the installation displays the setup launcher’s standard initialization dialog instead of the setup prerequisite dialog.

If the file that a setup prerequisite installation launches is an .msi package and the prerequisite is marked to show progress, the user interface shows a status bar, along with installation progress messages from Windows Installer, while the prerequisite is being installed.

If a setup prerequisite is configured to be optionally installed by the end user, the setup launcher displays a message box that enables end users to choose whether to install the setup prerequisite.

Message Box for an Optional Prerequisite

If an installation includes feature prerequisites, the setup launcher does not list them in any prerequisite dialog. However, the user interface does show progress messages if appropriate. In addition, the setup launcher displays the optional prerequisite message box if the feature prerequisite is marked as optional.

Silent Scenarios—Suppressed User Interface

The installation can install setup prerequisites and feature prerequisites even if the installation is run silently. That is, InstallShield prerequisites are supported in any of the following scenarios:

Silent setup launcher and visible .msi package—The user interface for the setup launcher is suppressed, but the user interface for the .msi package is visible. For example, the end user might use the following command-line statement:

Setup.exe /s

In this scenario, the language selection dialog and the setup prerequisite dialog are not displayed.

Visible setup launcher and silent .msi package—The user interface for the setup launcher is displayed, but the user interface for the .msi package is suppressed. For example, the end user might use the following command-line statement:

Setup.exe /v“/qn”

In this scenario, the feature selection dialog and all of the other dialogs of the main installation are not displayed. However, the end user can set Windows Installer properties such as ADDLOCAL, ADDSOURCE, ADDDEFAULT, and ADVERTISE from the command line to indicate which features should be installed.

Silent setup launcher and silent .msi package—The user interface for the setup launcher and the .msi package are suppressed. For example, the end user might use the following command-line statement:

Setup.exe /s /v“/qn”

In this scenario, all of the setup launcher and .msi package dialogs are suppressed.

If the UI sequence of the main installation’s .msi package is skipped, the setup launcher evaluates Windows Installer properties such as ADDLOCAL, ADDSOURCE, ADDDEFAULT, and ADVERTISE to determine if any feature prerequisites should be installed, and it installs feature prerequisites accordingly.

UAC Prompts

Depending on how it is configured, an installation that includes InstallShield prerequisites may prompt for elevated privileges on Windows Vista and later systems at several different points during the installation:

1. When the end user launches the Setup.exe file
2. When the Setup.exe file launches a setup prerequisite that requires elevated privileges
3. When the Setup.exe file launches a feature prerequisite that requires elevated privileges
4. When the Windows Installer begins the Execute sequence of the .msi package

For more information, see Minimizing the Number of User Account Control Prompts During Installation.

Changing the Behavior of InstallShield Prerequisites

Edition: InstallShield Premier Edition and InstallShield Professional Edition include the InstallShield Prerequisite Editor, a tool that enables you to change the behavior of an InstallShield prerequisite.

The InstallShield Prerequisite Editor that is available in the Premier and Professional editions of InstallShield enables you to configure certain prerequisite behavior and configuration settings. For example, with the InstallShield Prerequisite Editor, you can do any of the following tasks:

Specify whether a prerequisite should be listed in the setup prerequisite dialog at run time.
Specify whether a prerequisite should be optional.
Configure an InstallShield prerequisite so that it is installed either before or after any installation of the Windows Installer engine and the .NET Framework.
Specify command-line parameters that should be passed to the prerequisite when it is launched so that it runs silently.
Specify whether the prerequisite requires administrative privileges.

See Also