I'm making 'minor upgrade' packages using WIX. I'm confused when it comes to basing the upgrade packages.
When I generate a patch do I always base off version 1, or do I base version 3 off of version 2?
in short, I'm having trouble understanding the
<UpgradeImage SourceFile="$(var.ProjNew)" Id="Upgrade1_$(var.NewID)">
<TargetImage SourceFile="$(var.ProjOld)" Order="2" Id="Target1_$(var.NewID)" IgnoreMissingFiles="no" />
</UpgradeImage>
ProjNew should point to the new MSI, what should ProjOld point to? the first MSI, or the n-1 MSI?
could someone help me understand whats going on and how to do this correctly? Ideally someone who's running version1 when version 3 comes out could just get one update package, that leads me to believe I should always base off version1. But if I do that what happens if someone has version 2 installed? are they toast?
I think the heart of my question is assume I've built three versions 1, 2, and 3. Assume each is based on version 1. If someone installs version 1 and then version 2. They then get version 3 patch what will happen? will msiexec remove patch 2 and then apply patch 3? keep in mind patch 3 is based off of version 1.