Главное обновление WiX3 не работает - PullRequest
5 голосов
/ 05 октября 2010

У меня есть серьезное обновление, которое я пытаюсь сделать, но оно просто не работает. Он просто устанавливает новую программу вместе со старой. Они находятся в разных каталогах (так как я изменил структуру каталогов с новой версией), поэтому никаких конфликтов нет, но старый должен быть удален, чтобы мой продукт функционировал нормально.

<Property Id="UPGRADE_NEEDED" Secure="yes" />
<Property Id="SAME_OR_NEWER_VERSION" Secure="yes" />
<InstallExecuteSequence>
    <RemoveExistingProducts After="InstallFinalize" />
</InstallExecuteSequence>
<Upgrade Id="{PUT-YOUR-GUID-HERE}">
    <UpgradeVersion Minimum="5.1.3" OnlyDetect="yes" IncludeMinimum="yes" Property="SAME_OR_NEWER_VERSION" />
    <UpgradeVersion Minimum="5.1" Maximum="5.1.3" Language="1033" Property="UPGRADE_NEEDED" MigrateFeatures="yes" IncludeMinimum="yes" />

Это мои элементы обновления (с удаленным GUID, конечно). Если кто-то может найти, в чем проблема, я был бы очень признателен.

1 Ответ

7 голосов
/ 05 октября 2010

Есть некоторые общие правила , чтобы обновление работало:

  1. Старые и новые продукты должны иметь одинаковые значения UpgradeCode и разные ProductCode значений.

  2. Старые и новые продукты должны иметь одинаковые значения для InstallAllUsers [т. Е. Установка на отдельную машину не может обновить установку на пользователя и наоборот.]

  3. Настройка нового продукта Version (проект установки, не имеющий отношения к версиям файлов) должна быть выше.

  4. Все версии установки (опять же, не версии файлов)должно быть 1.0 или выше.

Более подробную информацию о том, как правильно реализовать обновление с использованием WiX, можно найти в этой теме:

Как реализовать обновление установщика WiX?

...