Tab - Preconditions

Here you can configure the conditions that the UEM Agent checks in each polling interval. If the conditions are not met, there will be no package download and therefore no installation.

Tab - Already Installed

Here you can configure the conditions that the UEM Agent checks in each polling interval. If the conditions are fulfilled, then no package download takes place, but the package is marked as successfully installed on the computer and a corresponding log file for a successful installation is created. The package is therefore considered to have been successfully installed.

An additional uninstall call can be defined.

The package is then downloaded to the local agent cache and the configured uninstall call is executed.

For all uninstallation calls, the return value of the call must be observed, otherwise incorrect information about the package status will be transmitted.

Possible examples:

  • MSI
    MsiExec.exe /X {AC76BA86-7AD7-1031-7B44-AB0000000001} REBOOT=REALLYSUPPRESS /qb-! /Li %Temp%\MSILogFile.log
    The general return values for MSI uninstallations apply.
  • PowerShell
    PowerShell.exe -File Path\Uninstall.ps1
    The .ps1 file must return a correct return value of the executed script to the agent. For this the variable $host.SetShouldExit( ) has to be used.
    • $host.SetShouldExit(0) = Success
    • $host.SetShouldExit(1) = Error
       
  • Batch
    Path\UninstallPackage.bat
    The .bat file must return a correct return value of the executed script to the agent. The command EXIT /B ( ) must be used for this.
    • EXIT /B (0) = Success
    • EXIT /B (1) = Error

Logical Conjunction of Conditions

All conditions can be combined with AND or OR. Thus, for example, conditions as shown in the example are possible. Textually this corresponds to this pseudo code:

1 AND (2a OR 2c OR (2b1 AND 2b2)) AND (3a AND 3b)

If Preconditions and Already Installed Conditions are defined, the Conditions check is performed first for Already Installed and then for Preconditions.

Available Conditions

Check Registry Key

SWM_Conditions_CheckRegKey

A registry key can be checked whether it exists or not.

Check Registry Value

SWM_Conditions_CheckRegValue

A registry value can be checked whether it exists or not.

Compare Registry Value

SWM_Conditions_CompareRegValue

A registry value can be compared, whether it is greater / smaller / equal / one of/... a value.

The comparison type (number, text or version) must correspond to the value.

If version is used as comparison type, please note that the major and minor version must always be specified, e.g. 9.1..

If the operator is One of or None of, then the single values in the Value field must be separated with a semicolon (;).

WMI Query

SWM_Conditions_WMI

A WMI query can be used to query a unique result.

Queries that return more than one unique value are not supported.

Check File

SWM_Conditions_CheckFile

A file can be checked whether it exists or not.

Windows environment variables can also be used in the path name.

Compare File Properties

SWM_Conditions_CompareFile

A file property can be checked for size, version, creation date and modification date to see whether the file is larger / smaller / equal/ on of / ... a value.

If the operator is One of or None of, then the single values in the Value field must be separated with a semicolon (;).

Check Folder

SWM_Conditions_CheckFolder

A folder can be checked whether it exists or not.

Windows environment variables can also be used in the path name.