Properties are global variables used by Windows Installer during an installation. Their values can be set by the operating environment or by authoring them into the installation database. Properties can be used inside Formatted Type fields with the format [PROPERTY] and they will be replaced at install time with the value associated with the property's name. There are two main types of Windows Installer properties:

  • Private Properties (contain lower-case letters in their name, example: My_Prop)
  • Public Properties (contain only upper-case letters in their name, example: MY_PROP)

ImportantThe difference between Private and Public Properties consists in the way their values are being passed on. The value of a Public Property is passed on from the InstallUISequence (in which the dialogs are showed) to the InstallExecute Sequence (in which the system is modified). Additionally, only Public Properties can be specified at the "msiexec" command line.

TipTherefore, make sure that you use a Public Property for an UI control (Editbox, Combobox etc) if you want its value to be available in the InstallExecute Sequence (for instance, if the value of this Property is written in the registry).

One very important group of properties are the Windows Installer predefined system Folders.

The Properties complete reference can be found using this link:

This topic is included in the Windows Installer SDK, which is part of the Windows SDK.

Most properties used in an installation package created with Advanced Installer are Windows Installer Properties. However, some of them are custom and they are specific only to Advanced Installer:

Property NameDescription
APPDIRPath of the Application Folder in the Files and Folders page (it is usually the main installation folder).
SHORTCUTDIRPath of the Application Shortcut Folder in the Files and Folders page (it usually points to a folder in the Start menu).
SOURCEDIRLocation of the MSI file. It is resolved when you launch the MSI package and it shouldn't be confused with the "SourceDir" Windows Installer property.
SETUPEXEDIRLocation of the EXE bootstrapper (it is resolved when you launch the installation through the EXE bootstrapper).
OLDPRODUCTSA list with the Product Codes of the older versions of your installation package. This property is set only in a package which upgrades another package.
AI_INSTALLSet (it is not empty) when the first installation of the package is performed.
AI_MAINTSet (it is not empty) when the installation package is running in maintenance mode (Modify, Repair and Remove options).
AI_PATCHSet (it is not empty) during a patch installation.
ODBC_RES_PROPODBC Resource set in the "SQLConnectionDlg" dialog.
SERVER_PROPServer name set in the "SQLConnectionDlg" dialog.
PORT_PROPPort set in the "SQLConnectionDlg" dialog.
DATABASE_PROPDatabase name set in the "SQLConnectionDlg" dialog.
USERNAME_PROPUsername set in the "SQLConnectionDlg" dialog.
PASSWORD_PROPPassword set in the "SQLConnectionDlg" dialog.
AI_SH_DIRStart menu folder in which the shortcuts will be placed (it can be set by using the "StartMenuShortcutsDlg" dialog).
IAgreeSet to "Yes" or "No", depending on whether the user accepts or doesn't accept the terms in the License Agreement.
AI_DESKTOP_SHSet (it is not empty) when the user selects the "Desktop" option in the "ShortcutsDlg" dialog.
AI_STARTMENU_SHSet (it is not empty) when the user selects the "Start Menu Program folder" option in the "ShortcutsDlg" dialog.
AI_QUICKLAUNCH_SHSet (it is not empty) when the user selects the "Quick Launch toolbar" option in the "ShortcutsDlg" dialog.
AI_STARTUP_SHSet (it is not empty) when the user selects the "Startup folder" option in the "ShortcutsDlg" dialog.
AI_PACKAGE_TYPESet to the type of the package and it can have one of these values: Intel for a 32-bit package, x64 for a 64-bit package and Intel64 for an Intel64 (Itanium) package.

Topics