Windows Installer Properties

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 Wizard Dialogs Stage (in which the dialogs are showed) to the Install Execution Stage (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).
SOURCEDIRCustom public property which stores the location of the MSI file. It is resolved when you launch the MSI package, available throughout the installation process 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.
AI_CF_SHARP_CORNERSSet to 1 when the installer has top sharp corners. If the property is not set, the installer will display round corners.
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.
AI_ProgramFilesUsed only in a "Mixed 32/64-bit matching the platform" installation package. When creating this type of package the presence of this property in the field "Application Folder" from the Install Parameters page is mandatory. The property will automatically resolve to ProgramFilesFolder or ProgramFiles64Folder, depending on the machine's type on which the package is installed.
AI_UserProgramFilesSet at install time when the installation type is "Per Machine/User" to one of the following values: ProgramFilesFolder if the user has administrative rights, LocalAppDataFolder otherwise.
AI_CUSTOM_EXTRACTION_PROP_COUNTSet by the "Format existing data" predefined custom action when the Extraction operation is used with Delimiter or Custom delimiter criterias. Its value represents the number of tokenized output properties.
PINTOSTARTThis property needs to be set to IDYES to automatically show tiles in the start menu. Once set, it will be globally available for all tiles declared in the Tiles page.