Ответ 1
Создайте основное обновление. Например, используйте элемент MajorUpgrade в WiX v3.5. http://www.joyofsetup.com/2010/01/16/major-upgrades-now-easier-than-ever/
У меня есть служба Windows, которую я устанавливаю и обновляю с помощью WiX, и это отлично работает (очень быстро!). Единственная проблема заключается в том, что если я обновляюсь, скажем, от 1.0 до 1.1, у обеих копий все еще есть записи в списке "Установка и удаление программ".
Итак, как я могу убедиться, что WiX удаляет старые/устаревшие записи в списке "Установка и удаление программ" при выполнении обновления?
Создайте основное обновление. Например, используйте элемент MajorUpgrade в WiX v3.5. http://www.joyofsetup.com/2010/01/16/major-upgrades-now-easier-than-ever/
Добавление к этому - если включен атрибут RemoveFeatures
MajorUpgrade
и называет определенные функции для удаления из предыдущей установки (но не для всех функций), это приведет к тому, что предыдущая запись останется в Add/Удалить программы. Если RemoveFeatures
не включен, все функции предыдущей установки будут удалены, включая запись в "Установка и удаление программ".
Не напрямую ответ на вопрос, но... установщик просматривает только первые 3 группы номера версии, 4-я группа игнорируется. Если единственная разница в версии относится к 4-й группе, то она выглядит так же для установщика, поэтому старую версию нельзя удалить.
1.2.3.0 обновится до 1.2.4.0, но 1.2.3.4 не обновится до 1.2.3.5 - он не увидит изменения 4-5, потому что он там не смотрит.