Run Program attributes (MSI)

Reference information
Project page Action Sequences, Dialogs and Billboards
Related topics Working with attribute panes
External links External link Windows Installer documentation

Introduction

A Run Program action executes an external program.

Note: This action combines the functionality of MSI custom actions #2, #18, #34, and #50.

Tarma note The Tarma Installer equivalent is Run Program.

Attributes

This pane contains the following attributes and options.

Attribute Description
Name

Enter the name of the action. This name must be unique among all actions in the same action sequence and must not be the name of a standard action or dialog box.

Description Enter the localizable description of the action. This description is displayed in progress messages in the installer while the action is executing.
Stored file

Select this option and enter the path to the external program that must be stored in the current package for subsequent execution, or click ... (browse) to open a standard Open dialog box that allows you to browse for the desired program. (This option corresponds to MSI custom action #2.)

Install file

Select this option and enter the (symbolic) path to the installation file that must be executed, or click ... (browse) to open the Select Installation File or Folder dialog box that allows you to browse for the desired file. (This option corresponds to MSI custom action #18.)

Property

Select this option and enter the name of the property that specifies the name of the external program to run, or click ... (browse) to open the Select Product Variable dialog box that allows you to select the desired variable. (This option corresponds to MSI custom action #50.)

Directory

Select this option and enter the (symbolic) path to the installation folder, or click ... (browse) to open the Select Installation Folder dialog box that allows you to select the desired folder. The external program will start with this folder as its current directory; you must specify the actual program name in the Command line attribute, below. (This option corresponds to MSI custom action #34.)

Command line

Enter any command line options that must be passed to the external program. If you selected the Directory option, the command line must also include (the full path to) the external program that must be executed. For the other options, only specify the command line arguments.

Condition

Enter the conditional expression that determines if the action will be executed, or leave empty for unconditional execution.

Note: Windows Installer does not accept the Tarma-specific extended syntax in conditional expressions. In particular, you can not use the symbolic execution context <...> to refer to variables, registry values, INI file values, or to perform runtime functions.

Run

Select the action's scheduling option from the drop-down list:

  • Always - Action is executed in each action sequence in which it appears.
  • Once - Action is executed only in the first action sequence in which it appears.
  • Once per process - Action is executed only in the first action sequence in which it appears, if the action sequences run in the same process.
  • If UI has run - Action is executed only if a user interface action sequence has already been run.
Execution

Select the action's in-script scheduling option from the drop-down list:

  • Immediate - Execute immediately
  • Deferred - Queue for execution in the installation script
  • Rollback - Queue for execution during a rollback of the installation script
  • Commit - Queue for execution during a committal of the installation script
  • Deferred, System - As Deferred, but runs in system context
  • Rollback, System - As Rollback, but runs in system context
  • Commit, System - As Commit, but runs in system context
  • Deferred, TS-aware - As Deferred, but runs with user impersonation on Terminal Server systems
  • Rollback, TS-aware - As Rollback, but runs with user impersonation on Terminal Server systems
  • Commit, TS-aware - As Commit, but runs with user impersonation on Terminal Server systems
Asynchronous Check this box to run the external program asynchronously; clear it for synchronous execution. With synchronous execution, the installer waits for the external program to complete before continuing with the next action; with asynchronous execution the installer immediately continues with the next action.
Ignore exit code Check this box to ignore the external program's exit code; clear it to respond to its exit code. In particular, if the external program returns a nonzero exit code and this option is cleared, the action will fail. An exit code of 0 (zero) indicates success.