Keeping 3rd-party software up-to-date on computers can be a challenge. These are things like Adobe Reader, Firefox, Chrome, and Java. The absolute best way to do this is with a 3rd-party update provider like PatchMyPC or Shavilk. If you can’t use one of these services, then here’s a pretty simple way to patch a software package.
I’m going to illustrate using Adobe Acrobat DC and ConfigMgr 1902. Acrobat can be updated without uninstalling the previous version by using an MSP file provided by Adobe. Other applications may require you to uninstall the old version first, then install the new version. That process can still be achieved using this method.
The advantage to using method is that you don’t have to target a specific group of computers. You can deploy this as wide as you need too, such as all the computers in your organization, and it will only run on computers with an older version of Acrobat installed. This makes it function as close to a Windows patch as I think you can get. With this method, the application will even disappear from Software Center after the application runs.
NOTE: Even though it’s theoretically perfectly safe, I still don’t recommend deploying this to the All Systems collection. It’s never a good idea to deploy something to All Systems.
First, we need our global condition, or two actually. The GC is what specifies whether or not the application will run on a computer. We’re going to check if Acrobat.exe is present, then check the file version of Acrobat.exe. If it’s less than the current version, the update will run. Once the update runs, the application no longer fits with the GC, so the application will disappear from Software Center after client policy refresh catches up.
The first GC just tells ConfigMgr which exe to look at. So, create a new GC by opening the console going to Software Library > Application Management > Global Conditions and click Create Global Condition in the ribbon. Give your GC a name and leave Device type and Condition type as is. Change the Setting type to File system. In the Path box, type the patch to the exe of the app you’re trying to update. For Acrobat, that’s %programfiles%\Adobe\Acrobat DC\Acrobat (assuming Acrobat is installed to the default directory). In the File or folder name box, type the name of the exe, for example Acrobat.exe. Leave the two checkboxes unchecked and click OK.
Now create a second GC. Give this GC a name (I would include the version of the software you’re updating). Leave Device type as is and change the Condition type to Expression.
Now, click Add Clause. Leave the Category as is, and change the Condition to the first GC. Change the Rule to Existential, and keep the option The selected global condition must exist on client device selected. Click OK.
Add a second Clause. Leave the Category as is, and change the Condition to the first GC. Leave the Rule type as value and change Property to File Version. Change the Operator to Less than and type the file version of the version you’re upgrading to the Value box. Click OK.
When the next version of Acrobat comes out, you’ll need to create a new GC for the new file version (or update this one).
Now that we have the GC, we need to add it to our application. To do this, find your application and open the deployment type. Go to the Requirements tab and click Add. Leave the Category as Custom, and select the second GC. Leave the Operator as Equals and the Value as True. Click OK and apply all changes to the deployment type.
Deploy your application as wide in your organization as needed. This will be a required deployment to a computer collection.
All content provided on this blog is for information purposes only. Windows Management Experts, Inc makes no representation as to accuracy or completeness of any information on this site. Windows Management Experts, Inc will not be liable for any errors or omission in this information nor for the availability of this information. It is highly recommended that you consult one of our technical consultants, should you need any further assistance.