Hello dear folks at Advanced Installer. We have been a happy customer of your product for about a year, ever since it has helped us solve some rather quite tricky problems, mostly related to updates. While I have been able to solve most of them by reading the Community page and playing around, I am in need of your assistance now.
The problem we are having occurs after an update is performed on a per-user installation, which doesn't require elevated privileges. Even though I have used PreserveInstallType custom action, placed in both Wizards Dialogs and Install Execution stages, the install type does not seem to be properly persisted. Namely, before I added this action I had issues with directiories being changed after an update, paralel installed versions and probably more. After adding the custom action I have none of those and all seemengly works well. However what happens is after the update, uninstallation of the our app requires elevated rights, and by extension all the following updates as well (A rather funny situation as thanks to you our per-machine updates no longer require admin rights)
I have tried adding the PreserveInstallType action before Searches, after Searches, after Searches but before FindRelatedProducts, all with no luck. I will attach our project file both and uninstallation logs before and after an update (for some reason Windows doesn't generate logs for the update). The main difference I believe in the uninstallation logs are these three lines:
PROPERTY CHANGE: Adding MSIINSTALLPERUSER property. It's value is '1'
PROPERTY CHANGE: Adding MSIINTERNALINSTALLEDPERUSER property. It's value is '1'
Determined that existing product (either this product or the product being upgraded with a patch is a dual mode package installer in per-user mode.
Those show up in uninstallation logs before the update but not after. I have yet to go through "bad" update logs for per-user update and "good" for per-machine update, to try to see if I can draw some kind of parallel, but it's probably gonna be hard as I don't have an example of "good" per-user update.