Skip to main content

I'm trying to install some software (Snagit) with an MSI installer that references an MST file.  I have been able to do this in the past for a required software policy for another piece of software, but my hangup here is that prior to the installation, I have to run an uninstaller to remove previous versions or else the user will have side-by-side installations, which we don't want.  Also, this wouldn't be a required software policy, rather a worklet, and I don't know how to convert the “start-process” command line into a workable worklet argument that would meet the requirements.

 

Requirements:

-Only run the worklet if they are under the major version 25.XXX as anything with version 25 won't need a full uninstall and the update policy should handle the minor version update from 25.X to 25.Y.

-Run the uninstaller (only if they have a version less than 25) to prevent side-by-side installations. Using their uninstaller tool will suppress the confirmation popups the user would normally get and also accommodate what versions to remove (UninstallerTool.exe -product snagit -keep 25)

-Install snagit.msi ($appName = 'Snagit 2025', $dispVer = '25.1.1.6503')

-Must reference the uploaded MST file (snagit-modified.mst)

-Since this software is only used by a small percentage users in the company, the worklet would need to have the ability to run manually on-demand, preferably with a copy of the evaluation script in the remediation code section, so the manual run would still check for versions.  

 

Any ideas on how to accomplish this using the MSI System Wide installer policy from the worklet catalog? 

 

They included a batch file with the following content:

UninstallerTool.exe -product snagit -keep 25
IF %ERRORLEVEL% NEQ 0 EXIT /b ERRORLEVEL
msiexec.exe /I "C:\<path>\snagit.msi" TRANSFORMS="C:\<path>\snagit-modified.mst" /quiet /norestart

Be the first to reply!

Reply