Condition Builder

<< Click to Display Table of Contents >>

RayPack > 8.0 > User Guide > PackDesigner > MSI / MST / RPP Based Projects > Common Dialogs 

Condition Builder

RayPack's condition builder supports packagers whenever conditional statements have to be constructed.

 

ConditionBuilder

 

The dialog interface is divided into a button bar at the top, and a text input area for the definition of the actual condition string.

As usual in RayPack dialogs, the buttons OK and CANCEL at the bottom of the dialog window may be used to save the contents, or abort the manipulation.

 

How to Define the Conditional Statement

Once the condition builder is loaded, the buttons at its top allow the utilization of a set of predefined values, grouped by their purpose. Although it is possible to manually type the desired condition string, the offered predefined items may help to save time and be sure about notation requirements.

 

PROPERTIES

With a click on the properties button, packagers will get a list of recognized MSI properties for conditional statements, such as ComputerName, ProductCode or VersionNT. By entering a keyword into the input field above the list, the properties are filtered down to those, which contain the keyword as part of their name, or part of their description. Hover over the link of any property item to read its description. Properties that are displayed using a bold font are present in the current package.

 

The radio group on the right hand side determines what kind of operator will be generated when the property is inserted into the condition. By default the value is IS SET which means that no operator will be used. For example, if the property VersionNT64 is focused and the Is set option is selected, when the Add to condition button is pressed, the string VersionNT64 will be added to the condition box. During run-time it will be then a simple check whether the property VersionNT64 is set.

 

Other options generate different operators (where % is the name of the property):

 

Is unset

NOT %

Greater than

> %

Greater or equal to

>= %

Equal to

= %

Equal to (case insensitive)

~= %

Is not equal to

<>

Less or equal to

<= %

Less than

< %

 
FEATURES

With a click on the features button, packagers will get a list of features present in the current package. By entering a keyword into the input field above the list, the features are filtered down to those, which contain the keyword as part of their name.

 

The radio group on the right hand side determines what kind of feature state will be generated when the feature is inserted into the condition. By default the value is Installed which means that the sub-condition will return true only if the feature is installed. For example, if the feature ABC is focused and the Installed option is selected, when the Add to condition button is pressed, the string !ABC = 3 will be added to the condition box. During run-time it will be then a simple check whether the feature state of feature ABC is 3, which means Installed.

 

COMPONENTS

With a click on the components button, packagers will get a list of components present in the current package. By entering a keyword into the input field above the list, the components are filtered down to those, which contain the keyword as part of their name.

 

The radio group on the right hand side determines what kind of component state will be generated when the component is inserted into the condition. By default the value is Installed which means that the sub-condition will return true only if the component is already installed. For example, if the component ABC is focused and the Installed option is selected, when the Add to condition button is pressed, the string ?ABC = 3 will be added to the condition box. During run-time it will be then a simple check whether the component state of component ABC is 3, which means Installed.

 

PREDEFINED SEARCH

With a click on the Predefined search button, packagers will get a list of predefined searches that can be used to locate specific installation folders or to locate the existence of specific applications and tools. The following predefined searches exist:

 

ADOBEREADER_10_INSTALLPATH

ADOBEREADER_9_INSTALLPATH

ADOBEREADER_DC_INSTALLPATH

ADOBEREADER_X64_INSTALLPATH

DOTNET_20_VERSION

DOTNET_30_VERSION

DOTNET_35_VERSION

DOTNET_48CLIENT_RELEASE

DOTNET_48FULL_RELEASE

DOTNET_CORE_VERSION

DOTNET_COREX64_VERSION

IIS_ROOTPATH

MSE_INSTALLED

MSIE_10_INSTALLED

MSIE_10X64_INSTALLED

MSIE_11_INSTALLED

MSIE_11X64_INSTALLED

MSIE_70_INSTALLED

MSIE_70X64_INSTALLED

MSIE_80_INSTALLED

MSIE_80X64_INSTALLED

MSIE_90_INSTALLED

MSIE_90X64_INSTALLED

MSOFFICE_2003_INSTALLED

MSOFFICE_2003_INSTALLPATH

MSOFFICE_2007_INSTALLED

MSOFFICE_2007_INSTALLPATH

MSOFFICE_2010_INSTALLED

MSOFFICE_2010_INSTALLPATH

MSOFFICE_2010X64_INSTALLED

MSOFFICE_2010X64_INSTALLPATH

MSOFFICE_2013_INSTALLPATH

MSOFFICE_2013X64_INSTALLPATH

MSOFFICE_2016_INSTALLPATH

MSOFFICE_2019_INSTALLPATH

MSOFFICE_365_INSTALLPATH

POWERSHELL12_VERSION

POWERSHELL351_VERSION

POWERSHELL672_VERSION

POWERSHELL672_X64_VERSION

SQLEXPRESS_VERSION

WIN_CURRENT_BUILD

 

OPERATORS

With a list on the OPERATORS button, packagers get a list of symbol tiles, each a representation of a typical operator.

 

SNIPPETS

Snippets are commonly used combinations of properties, operators and values. Use them to quickly define repeatedly required conditional statements.

 

Clicking on a property, operator, or snippet automatically adds the string representation to the conditional statement. The phrase is added exactly at the position defined by the current cursor location.

 

When a property is added to the conditional statement, it is displayed in a blue, bold font style. Operators are displayed in a green, bold font style.

 

The snippet list is configurable, the advanced section