Script: Re-Check Add/Remove Programs in Workspace ONE UEM
This script tries to cover the missing capability of Workspace ONE UEM to regularly check if Win32 Applications have been uninstalled by users/admins.
It is going through all records within HKLM:\SOFTWARE\AirWatchMDM\AppDeploymentAgent\AppManifests and reads the DETECT conditions as well as associated properties.
It then resolves all properties to either True or False (eg. Registry Key match Value X) and concludes by re-building the condition chain (eg. Property1 AND Property2 OR Propery3).
If this is done the script then checks the IsInstalled value HKLM:\SOFTWARE\AirWatchMDM\AppDeploymentAgent\S-1-5-18\$($AppId) and updates the value to the detected state.
I have implemented a $run_as_sensor variable which basically suppress all outputs except one at the end in order to run this script as Workspace ONE Sensor on Trigger or Schedule.