08-15-2024 06:05 PM
I'm unable to run the Armoury Crate installer - it runs briefly and then pops up a window saying Installation Succeeded, but there is nothing actually installed.
After a considerable amount of debugging, I have identified the issue:
The QueryUWP.exe tool is used as part of the install process. It is used to attempt to locate any previously installed AppX packages. It does this by invoking Powershell to call the get-appxpackage command. However, it invokes powershell naively. Any powershell output, whether it is from the command or not, is read and printed into the INI file. In my case, this is an issue because I have a custom profile which prints output, and Powershell is not being invoked with the -NoProfile flag.
Quite frankly, this is an incredibly poor mechanism for managing installations when ordinary MSI installers are available. If you must use this method, you should load and execute the powershell runtime instead of shelling out.
This may also be a security risk, as it is vulnerable to shell injection.
To anyone else who may have found this: Find anything that might be providing output from a default launch of powershell and temporarily disable it to be able to proceed with installation.