Video Screencast Help

Applicability Rules and Uninstalls

Created: 20 Jul 2012 | 3 comments

HOWTO6126 says that "The applicability check is not used when uninstall command line is selected in Managed Delivery Policy"

However, I'm finding it it is. I use Applicabilty checks to check for NOT the same or newer version of the relevant executable. So a PC with the same or a newer version, of say, Silverlight, won't install our standard version. But this is stopping uninstalls. The detection check comes up "Detected" and the Applicability check "Not detected" and the uninstall doesn't run. The uninstall is set as an "Uninstall" command type and is the default uninstall command. This is through a Managed Software Delivery Policy specifically to uninstall the program.

The Detection and Applicabilty rules work for the install.

I'm using 7.1 SP2 with no hotfix update rollups.

I can change the Applicabilty rule to only detect newer and not the same version but surely I shouldn't have to if the product was working as described. Anyone else have any experience with this?

Comments 3 CommentsJump to latest comment

mclemson's picture

If a detection check evaluates true, and applicability evaluates true, then an uninstall command line should fire.  However, you're saying the applicability check here that is evlauating as 'Not detected' should evaluate as 'Detected'?

In general, I do not use applicability rules to determine whether software is installed.  I use detection rules for that.  So my applicability rules look at things like operating system, operating system architecture (32-bit or 64-bit), or whether certain related programs are installed (if I am installing Add-on Plus for Program XYZ, is Program XYZ installed?).

What is your detection rule if your applicability rule is what you're using to refer to Silverlight?

Mike Clemson, Senior Systems Engineer, ASC
Intuitive Technology Group -- Symantec Platinum Partner

andykn101's picture

is installed, so I don't want the previous version to install. So when I create a Silverlight 4 package, for example, my Applicability rule would effectively say NOT Silverlight >4. But, now Silverlight 5 is out, if I want to uninstall Silverlight 4 before I install Silverlight 5 the Applicability rule seems to be stopping the Uninstall running even though the uninstall command line is set to the "Uninstall" command type and is the default for Uninstall.

I started using detection rules orginally to say Detected if Silverlight >=4 but then any Custom Inventory working off that rule will be wrong. So now my Detection rule will be more precise, MSI GUID where available or Silverlight.exe=4.1.whatever.

But, to go back to your question, I expect, even though the Applicability Rule evaluates to "Not Detected", '0'. i.e. Not Applicable, an Uninstall type command line should run, because that's what HOWOTO6126 seems to say. After all, if software is detected but not applicable to a system you'd want to uninstall it.

In your scenario, if someone had managed to manually install an addon to a product that wasn't installed you wouldn't be able to uninstall it via Policy.

Thanks for your reply.

Authorised Symantec Consultant (ASC) with Endpoint Management Limited, an Authorised Symantec Delivery Provider based in the UK.

Connect Etiquette: Please "Mark as Solution" posts that fix your problem.

andykn101's picture

I tend to invoke uninstalls specifically through lines in a Managed Software Delivery Policy. So, if I wanted to uninstall Silverlight 4 before installing Silverlight 5 my Policy would have two entries, one for Silverlight 4, with the default Uninstall command line selected, and another entry for Silverlight 5 with the Install command line selected.

However, if I just have Silverlight 4 as Superseded by Silverlight 5, select Silverlight 5 install in the Policy with "Automatically Upgrade..." selected then the Silverlight 4 Applicability check won't run, just the Detection Check.

The drawback of this approach is that I can only have one set of "Advanced Options" for the whole policy. I might want to only have Silverlight uninstall when no user is logged on, in case it is in use, but not care whether or not a user is logged in to install Silverlight 5.

Authorised Symantec Consultant (ASC) with Endpoint Management Limited, an Authorised Symantec Delivery Provider based in the UK.

Connect Etiquette: Please "Mark as Solution" posts that fix your problem.