Я делаю пакеты «незначительного обновления» с использованием WIX. Я в замешательстве, когда дело доходит до базирования пакетов обновления.
Когда я генерирую патч, я всегда основываюсь на версии 1, или я делаю версию 3 на версии 2?
короче, у меня проблемы с пониманием
<UpgradeImage SourceFile="$(var.ProjNew)" Id="Upgrade1_$(var.NewID)">
<TargetImage SourceFile="$(var.ProjOld)" Order="2" Id="Target1_$(var.NewID)" IgnoreMissingFiles="no" />
</UpgradeImage>
ProjNew должен указывать на новый MSI, на что должен указывать ProjOld? первый MSI или n-1 MSI?
Может ли кто-нибудь помочь мне понять, что происходит и как это сделать правильно? В идеале тот, кто работает с версией 1, когда выйдет версия 3, может просто получить один пакет обновлений, и это заставляет меня поверить, что я всегда должен опираться на версию 1. Но если я это сделаю, что произойдет, если у кого-то установлена версия 2? они тосты?
Я думаю, что суть моего вопроса в том, что я построил три версии 1, 2 и 3. Предположим, каждая из них основана на версии 1. Если кто-то устанавливает версию 1, а затем версию 2. Затем они получают исправление версии 3, что случится? msiexec удалит патч 2, а затем применит патч 3? имейте в виду, что патч 3 основан на версии 1.