I had a .Net 1.1 application with Setup project and RemovePreviousVersions=true.
After I converted it to .Net 2.0, I’ve tried to install it on machine where previous version was installed.
It caused System.BadImageFormatException exception. I believe that new .Net 2.0 Setup failed to uninstall .Net 1.1 application due to .Net framework versions mismatch.
I’ve desided to change UpgradeCode, that will be considered as new application, and it allowed me to install new version.
Alternatively user can manually uninstall previous version prior to install new one(not tested yet).
I’ve reported the issue toMicrosoft.
I am using dynamic URLBehavior for some web services and during Setup change web services URLs to appropriate value (based on MSDN article).
According to MSDN2: If you set the URL behavior of the Web reference to dynamic, the application obtains the URL at run time from the appSettings element of your application’s configuration file.
However I’ve noticed that app.config file has entries for the same URL in both appSettings and <applicationSettings>.
After reading the generated code (Reference.vb/cs) it seems that appSetting entry is ignored, and the actual url from applicationSettings is used.
After some research I found a confirmation here.
I didn’t have a chance to test it yet.
It seems like breaking change for my Setup/installer program.
Update: I’ve posted a helper class that allow me to Update Dynamic Web reference URLs Diring Installation in Visual Studio 2005