I needed to get geoSCOUT working in Omnissa Horizon (formerly VMware Horizon) but geoLOGIC doesn’t officially support publishing geoSCOUT to systems like Citrix, RD Web, and Horizon. Due to the way that geoSCOUT works you can’t just launch the geoSCOUT exe and have it work.
On the first launch a user would normally run the geoSCOUT Desktop_Build_NonAdmin_v8.exe installer which will create the App Data and the document files for the user. The creation of the App Data part is important because that is when it creates the reference to the geoSCOUT license file. If you try to just run the geoSCOUT Desktop_Build_NonAdmin_v8.exe install file outside of the path of your geoSCOUT license file it won’t install correctly.
Now a way to get around the issue is to have the user RDP into your session host that is publishing the application and have them run the non admin installer but that isn’t very seamless and is very time consuming.
My solution was to write a PowerShell script that launches before the user launches geoSCOUT.
Here is a link to the script on my GitHub https://github.com/thedxt/geoSCOUT#geoscout-published you will need to tweak it to make it work fully in your setup
I left the verbose output in there to make troubleshooting it easier. What the script does is it checks if App Data geoLOGIC systems folder exists if it doesn’t exist it launches the geoSCOUT non admin installer and runs it silently. Once it is completed it launches geoSCOUT.
If App Data geoLOGIC systems folder is found it considers geoSCOUT as installed and doesn’t run the installer again. As running the installer again can cause issues with the user’s configs.
To get this to work seamlessly for the end users I used PS2EXE converter to convert the PowerShell script to an exe and even injected the geoSCOUT icon. This way when it’s published to Omnissa Horizon the user has no idea there’s some script magic happening and when they launch it.
If the geoSCOUT admin installer has not been ran on the system the script won’t fully work as the geoSCOUT.exe file in Program Files won’t exist yet.
If the user launched geoSCOUT before this script is deployed it does get as far as creating the App Data geoLOGIC systems folder before you get the “Unable to launch geoSCOUT. A valid installation could not be found.” error so the script will think that geoSCOUT is installed when it’s not. Simply delete the geoLOGIC systems folder in App Data and run the script again and you’ll be good to go.
The user will see the nag screen to pin geoSCOUT to the taskbar but they can select the option to not remind them.
Due to using PS2EXE some Antiviruses and EDRs may flag it as malicious, however it is a false positive. (you can read more about why this happens here) All I needed to do was add hash of my exe to the allow list and I was good to go.