Symbolic Variable attributes

A Symbolic Variable represents a replaceable piece of text. The text proper is defined in one place and assigned a symbolic name; it is then referenced elsewhere in the project by using the special <name> syntax. Symbolic variables are typically used for folder paths and text strings that vary from project to project or from release to release, such as the product name and version. They are also used to control the installation process when they are part of conditional expressions.

Tip: For a full list of predefined symbolic variables, see the Symbolic variables topic.

Attributes

This pane contains the following attributes and options.

Attribute Description
Name Enter the name for the variable. This name must be unique within the project and must be different from all other symbolic variables, folder aliases, and registry key aliases.
Type

Select the type of variable from the drop-down list:

Type Icon Description
Generic text Value is a general text.
File or folder path Value represents a file or folder path.
Value represents a folder alias.
Registry key path Value represents a registry key path.
Value represents a registry key alias.

The variable type is used during preflight checking to ensure that variables are used in the correct context. You do not have to assign a type to each variable; if a variable is defined in terms of other variables, it will automatically inherit their type if appropriate. The variable's type is indicated with an icon in the variables list on the Symbolic Variables project page as shown above.

Note: You cannot create folder or registry key aliases as variables; they are created automatically for each folder and registry key in the project. However, they can be used as regular folder or registry key path variables, respectively.

Value Enter the localizable value for the variable. You may use symbolic references in the value; they will be expanded each time the variable is used in the installer.
Value (NT)

Check this box and enter an alternate value for the variable if the variable must have different values for Windows NT-based platforms (Windows NT4, 2000, XP, 2003, and later). Clear this box to use the same value on all platforms.

See the section Platform-specific values below for details.

Value (x64)

Check this box and enter an alternate value for the variable if the variable must have different values for Windows x64-based platforms (Windows XP x64, 2003 x64, and later). Clear this box to use the same value on all platforms.

See the section Platform-specific values below for details.

Description Enter a description for the variable. This description is only for your own reference in InstallMate; it is not saved or used by the installers.
Public variable Check this box to store the variable in the installation database; clear it to omit it. If you omit a variable that is referenced elsewhere in the project, InstallMate will issue diagnostic message BLD:W0103.
Resolve at Build time

Check this box to resolve the variable at build time and store the resolved value for the installer. Clear this box to store the symbol's value expression as-is, which means that it will be expanded by the installer at installation time (this is the default).

This option is useful if you want to carry over information from your build environment to the installation, instead of using dynamic information from the target system.

If this option is set, any dynamic symbolic expressions such as runtime functions and registry lookup will be performed on the build system. Moreover, if the Value (NT) or Value (x64) are defined, then they will be used as follows:

  • If the build takes place on a 64-bits Windows version and Value (x64) is defined, its value will be expanded.
  • Else if Value (NT) is defined, that value will be expanded.
  • Else Value will be expanded.
Do not log in installer

Check this box to prevent the value of the symbolic variable to be logged in the installation log file; clear it to log its value.

If this option is set, then the TSU:D0001 and TSU:D0006 diagnostic messages will suppress the value of the variable. If its value is empty, it will be printed as empty; if the value is not empty, it will appear as *HIDDEN* in these messages.

This option is useful to prevent confidential values, such as passwords stored in a variable, from being logged in too obvious a way. However, if a variable with this option set is used in its symbolic form <MyVarName> in a different context, for example as part of the message in a MessageBox action or as an argument in a Run Program action, then its value will appear in the log file when information about those actions is logged.

Platform-specific values

Because some symbolic variables may be platform-specific, InstallMate allows you to specify separate values for Windows 9x-based systems (Windows 95, 98, Me), NT-based systems (Windows NT4, 2000, XP, Server 2003, Vista, Server 2008), and x64 and IA64-based systems (x64 and IA64 versions of XP, Server 2003, Vista, Server 2008). At installation time, the installer will select the most appropriate value according to the following table.

Platform Value used
Windows 9x Always uses Value
Windows NT (32-bit) Uses Value (NT) if available, else Value
Windows NT (x64) Uses Value (x64) if available, else uses Value (NT) if available, else Value
Windows NT (IA64) Uses Value (x64) if available, else uses Value (NT) if available, else Value

Related topics

Symbolic Variables, Working with attribute pane