InstallAware for Windows Installer Header Image Windows Installer without Rocket Science
InstallAware for Windows Installer

Setup Command Line Parameters

Every InstallAware setup supports command line parameters for silent and logged installs. In addition, you may also set/override the values of variables used in your installation from the command line.

You may freely combine all of the parameters displayed below. See uninstalling from the command line for an example.

Silent Installs

With the silent install command line parameter set, the entire installation will execute silently, without a user interface, or any user intervention. When input is required on dialog boxes, the default values of dialog controls will be used.

<setup.exe> /s

In the above example, setup.exe denotes the main setup executable.

Logged Installs

If the logging command line parameter is set, the installation will keep a verbose log of all the internal installation variables, as well as Windows Installer's own installation log. Be aware that logging significantly decreases the runtime speeds of an installation.

<setup.exe> /l=<logfile.ext>

In the above example, setup.exe denotes the main setup executable, and logfile.ext is the full path to the desired log file.

Specifying a Setup Password

You may specify the password for encrypted setups on the command line. This will prevent displaying the password prompt box and attempt to use the password indicated on the command line. This option is most useful when used in conjunction with silent installations, since silent installations cannot prompt for a setup password.

<setup.exe> /k=<password>

In the above example, setup.exe denotes the main setup executable, and password is the setup password.

Specifying Original Setup Sources for Patching

To make sure the setup program does not prompt for the location of the original setup sources during a patch operation, you may use the patch source command line parameter.

<setup.exe> /p=<original setup sources>\data

In the above example, setup.exe denotes the main setup executable, and original setup sources is the full path to the folder containing the original setup sources. Be sure to specify the data subfolder inside the original setup source folder (the data subfolder exists in all InstallAware setups built in uncompressed mode). For more information, see Patch Source Resolution.

Setting Variable Values

To set the values of setup variables from the command line, possibly overriding their default values in the process, specify the variables and their values as follows:

<setup.exe> <VARIABLE_1>=<VALUE_1> [ ... <VARIABLE_N>=<VALUE_N>]

In the above example, setup.exe denotes the main setup executable, VARIABLE_1 is the name of a variable to set, and VALUE_1 provides the value the variable is set to receive. You may set values for an arbitrary number of variables from the command line.

Similar to the above example, to perform an advertised install of a product, the following command line could be used:

<setup.exe> ADVERTISE=TRUE

If a variable is to be assigned an empty value, you may use the same form to set it to nothing. For instance, to disable wizard animation special effects, use:

<setup.exe> FX=

Please note that variable values specified on the command line in the above manner have no effect for interactive installations, which may override all designated variable values, in response to user interactions in setup dialogs, or in response to commands executed as part of your setup script.

Command Line Variable Locking

If you wish to specify and lock variable values from the command line during interactive (non-silent) installations, use the following form instead, replacing equal signs with colons:

<setup.exe> <VARIABLE_1>:<VALUE_1> [ ... <VARIABLE_N>:<VALUE_N>]

This form ensures variable values indicated on the command line are locked even when your setup is being run interactively, no matter how the installation script attempts to change them. For example, the following command line:

<setup.exe> TARGETDIR:c:\temporary folder

Installs your application forcibly to the c:\temporary folder folder, even if the end-user attempts to change the installation folder during the interactive setup interview, or even if your own installation script changes the value of the $TARGETDIR$ variable directly using commands such as Set Variable.