WiX «Major Upgrade» не полностью устанавливает приложение при понижении

В настоящее время все обновления работают нормально при обновлении до более нового номера версии, однако я получаю странное поведение при понижении версии. Кажется, что он удалит существующую версию, а затем частично установит версию, которую я пытаюсь установить, основной исполняемый файл еще не существует в целевом местоположении, но объявленные ярлыки созданы. Когда объявленный ярлык будет открыт, он завершит установку (предположительно выполнит ремонт), а затем будет работать нормально.

У кого-нибудь есть идеи, почему это происходит?

Мой блок обновления выглядит так:

<UpgradeVersion Minimum="0.0.0.0" Maximum="99.0.0.0" Property="PREVIOUSVERSIONSINSTALLED" IncludeMinimum="yes" IncludeMaximum="no" IgnoreRemoveFailure="yes" />

(IgnoreRemoveFailure была попыткой решить эту проблему, но, похоже, она ничего не сделала)

В моей InstallExecuteSequence у меня есть<RemoveExistingProducts After="InstallValidate" />

Также у меня естьProduct Id="*" а такжеPackage Id="*"

Причина, по которой требуется понижение рейтинга, заключается в том, что клиентское приложение должно работать с той же версией, что и сервер, для обеспечения совместимости, и весь процесс должен быть автоматизирован, поэтому, если версии клиент / сервер не совпадают при входе, пользователь может просто нажмите «да», и соответствующая версия будет загружена, установлена и запущена. Пока что это работает для обновлений, но для понижения необходим дополнительный неинтуитивный шаг, который заключается в том, чтобы вручную перезапустить приложение и затем увидеть диалоговое окно установщика Windows перед его запуском.

Конечным результатом является то, что независимо от обновления или перехода на более раннюю версию текущую версию необходимо полностью удалить, а загруженную версию - полностью установить, поэтому, если есть другой способ сделать это, это также будет хорошим ответом.

Ответы на вопрос(5)

Ваш ответ на вопрос