Upgrading application does not always remove prior installed application

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Upgrading application does not always remove prior installed application

This post has NOT been accepted by the mailing list yet.
Hi everyone,

First of all, I've tried to find explanations on several forums but I didn't found a topic that might explain the behavior observed.

The observed behavior: When upgrading product, prior installation is not always removed correctly

What changed between previous and new installer wix setup project:
The previous product installer was installing under Directory <Directory Id="ProgramFiles64Folder">
The new installer has been updated is installing under <Directory Id="ProgramFilesFolder"> 
Checking for .NEt framework 4.5 or newer installed*
Add InstallDirDlg and set <Property Id="WIXUI_INSTALLDIR" Value="INSTALLFOLDER" />

1- When I upgrade product on my computer (Windows 10 - 64 bits OS) everything works fine:
Previous product installed under "C:\Program Files\" is uninstalled correctly
RemoveExistingProducts: Application: {F6E83B3C-CA4D-4FE2-BB54-4D5156D9EB98}, Command line: UPGRADINGPRODUCTCODE={DB2D1294-EA5F-4BEF-BFBC-A236E0DCDEB3} CLIENTPROCESSID=21584 CLIENTUILEVEL=0 REMOVE=ALL
New product is installed under "C:\Program Files (x86)\"

2- But on other hand, a user has encountered a problem: previous product is not uninstalled (Windows 7 - 64 bits OS)
What I can see when upgrading with verbose logs is that previous version is found:

RemoveExistingProducts: Application: {F6E83B3C-CA4D-4FE2-BB54-4D5156D9EB98}, Command line: UPGRADINGPRODUCTCODE={E71A5696-B038-4EEE-9B4A-DE0A3D84045E}  CLIENTUILEVEL=0 REMOVE=ALL

When CostFinalize sequence is started to remove existing product, all directory structure location is changed to 'C:\Program Files (x86)\' where product is not yet installed:

MSI (s) (6C:60) [12:17:56:505]: PROPERTY CHANGE: Modifying ProgramFiles64Folder property. Its current value is 'C:\Program Files\'. Its new value: 'C:\Program Files (x86)\'.
MSI (s) (6C:60) [12:17:56:505]: PROPERTY CHANGE: Adding JaliosDIR property. Its value is 'C:\Program Files (x86)\Jalios\'.
MSI (s) (6C:60) [12:17:56:505]: WIN64DUALFOLDERS: 'C:\Program Files (x86)\' will substitute 17 characters in 'C:\Program Files\Jalios\Jalios JDrive\' folder path. (mask argument = 0, the folder pair's iSwapAttrib member = 0).
MSI (s) (6C:60) [12:17:56:505]: PROPERTY CHANGE: Modifying INSTALLFOLDER property. Its current value is 'C:\Program Files\Jalios\Jalios JDrive'. Its new value: 'C:\Program Files (x86)\Jalios\Jalios JDrive\'.


I have the upgrade log files (the one working and the other failing)
I can give you more details if needed on the wix file.wxs used to generate msi

Has anyone faced a such behavior ?
Is the only solution to uninstall prior version and install the new one ?

In advance, thanks to all !