Question

I had an old installer which was a basic visual studio setup project however after some time we realized that it was just no where near as complex as we need. So I've spent a few days generating a replacing with WiX.

Now my current problem is upgrading from the previous installs. If someone has installed one of the versions that was installed with the VS Project, is it possible for them to use the new WiX project? I have tried with setting the upgrade codes the same but it's not making any different, it seems to think its a completely new product and tries to install again.

Is it possible?

Was it helpful?

Solution

See the help topic: How To: Implement a Major Upgrade In Your Installer

Major Upgrades can only perform upgrades in the same installation context. (Per User -> Per User or Per Machine -> Per Machine ). If your VDPROJ was installed Per-User by accident then the user will have to uninstall / reinstall to become Per-Machine.

Your new installer doesn't have to have the same UpgradeCode as the old installer but it does have to author the MajorUpgrade using the UpgradeCode from the old installer.

OTHER TIPS

It should be possible, but several things need to be set up correctly. Maybe what you see in .vdproj project is not the same as what is written in .msi installation. Use Orca as .msi reader, and extract every needed information. Upgrade code must be the same, product code must be different, and installation version must be larger, in either first, second, or third number. Fourth number does not count.

WiX is like a obscure black box to me too, so I could be missing something, but to my knowledge if all is set up like stated above then the old installation should be automatically uninstalled when you start new installation. There is a blog article that explains some of it.

EDIT: Upgrade code does not have to be the same, but then you have to do additional work, hopefully as described in this article.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top