Welcome to Symantec Connect.  Log in or register to participate.
Login to participate
Endpoint Management & Virtualization ArticlesRSS

Prevent an Older Version from Installation

Santro's picture

Prevent older version installation over newer version. As MSI Technology doesn't support this kind of check, we can provide it by doing a few steps in our packages to prevent installing an older version on top of a newer version.

Use the upgrade table "Action Property" to find a newer version installed.

In the Upgrade table add a row with:

  • UpgradeCode - UpgradeCode value of the package.
  • VersionMin - min version of your package.
  • Attributes 258.
    Where
    • 2 - Detect products and applications but do not install and
    • 256 - The range of versions detected includes the value in VersionMin
  • ActionProperty - NEW_VERSION_INSTALLED (user defined property name).

Use of Custom Action type 19 to terminate installation based on the "Action
Property".

Custom Action type 19 displays an error message, returns a failure and terminates the installation.

Add a new Custom Action type 19 - Terminate installation called CA_NEW_VERSION_INSTALLED to the InstallExecuteSequence under Immediate Execution mode. Add your comments for the Termination message as the Custom Action Target value;

Set this custom action to have a condition of DB_NEWERVERSION AND NOT Installed.

avherur's picture

More information

Nice article,

I want to add some more information to this article.

Attribute 2 implies : Detects Products & applications but does not remove.

I will also suggest that keep Custom action 19 after FindRelatedProducts action in the Execute Sequence.

This procedure relies on the "FindRelatedProducts" action, which only runs during a first time installation & does not run in maintenance mode i.e reinstallation. Because minor upgrade are performed using reinstallation, this procedure cannot be used to determine whether a minor upgrade package is attempting to downgrade an application.

Anand V Herur

AVHerur