I have a Web Application and Deployment Project that was originally built in VS 2008 that installed version 1.51 of my application. I am now using VS 2010 (and my app requires .Net 4 and Installer 4.5) and updated my application and the deployment project to 1.52. If I run the setup on a virgin system, everything works as expected.
If I run the 1.52 setup on a system with 1.51 already installed, instead of ending up with a full copy of 1.52 at the end of the setup, all files common to both 1.51 and 1.52 are deleted (regardless of whether or not they differ between versions), only files that did not exist in 1.51 at all are deployed, and my CustomActions are not run. The setup claims to have completed successfully. I ran the setup with the /l*vx option and used Wilogutl.exe to analyze the log file and it says "No error found" and "No solution needed".
I have RemovePreviousVersions set to True, same UpgradeCode for both versions, updated ProductCode and Version. If I set RemovePreviousVersions to false, then the install of 1.52 on a system with 1.51 already on it seems to give me the desired result.
Shouldn't it work with RemovePreviousVersions set to true?
What potential problems should I look for when doing an upgrade install if I leave RemovePreviousVersions set to false?
- Mark