Как един пач да е насочен към множество MSI с различни продуктови кодове?

Имам 64-битови и 32-битови MSI версии на продукт. За да могат тези издания да се третират като независими продукти, така че например 64-битова корекция да не бъде случайно приложена върху 32-битова версия MSI и обратното, аз им присвоих различни продуктови кодове. Въпреки това бих искал също така да мога да имам една единствена корекция, приложима както за 32-битови, така и за 64-битови - тъй като всичко, което кръпвам, е dlls и понякога exe.

В момента изграждам своите некомпресирани MSI с InstallShield, но правя корекции с помощта на WiX PatchCreation. Опитах да използвам

<TargetProductCode Id="*"/>

това обаче не промени поведението ми. В момента получавам the upgrade patch cannot be installed..the program to be upgraded may be missing.., което има смисъл.

Коя е най-добрата практика за решаване на този проблем? Трябва ли просто да направя продуктовите кодове еднакви между двете 32-битови и 64-битови версии?


person JohnZaj    schedule 21.01.2015    source източник


Отговори (1)


32-битов MSP може да закърпи само 32-битов MSI. Същото за 64 бита. Да, бих имал различни UpgradeCode и ProductCodes за двата инсталатора. Ако искате пластирът да изглежда като един пластир, можете да го увиете в Burn bootstrapper. Потребителят ще стартира EXE и правилната корекция ще бъде приложена.

person Christopher Painter    schedule 21.01.2015