Да, восстановление старой версии приложения с помощью отката при сбое установки на самом деле является встроенной функцией установщика Windows , но для правильной настройки необходимо выполнить некоторые настройки.работать так, как вам нужно.
Откат установщика Windows будет работать по вашему запросу, если вы используете: 1) незначительное обновление или 2) правильно упорядоченную мажорную последовательностьобновление , которое удаляет более старые версии после успешного обновления всех файлов.Если основное обновление настроено на удаление старой версии перед установкой новой, откат недоступен, поскольку деинсталляция уже завершена, и, следовательно, новый установщик ничего не оставит установленным, если произойдет сбой и произойдет откат.
Важно : для незначительных обновлений и для поздней деинсталляции старой версии в основных обновлениях для правильной работы все правила компонентов MSI должны соблюдаться на 100% точно .
При размышлениио серьезном обновлении, которое удаляет старую версию после обновления, вы можете рассматривать это как операцию исправления , не имея обновления, упакованного как исправление.Установщик Windows фактически запустит diff для старой и новой версии, а затем внесет только необходимые изменения, оставив остальную часть приложения без изменений.В зависимости от структуры приложения и количества файлов, этот также может быть значительно быстрее для установки .
Поздние крупные обновления также могут быть чтобы файлы конфигурации не возвращались к исходному состоянию установки во время обновлений.Это классическая проблема, когда файлы конфигурации изменяются после установки, удаляются во время крупного обновления, а затем переустанавливаются, создавая впечатление, что они возвращаются, когда они фактически заново установлены.
Я написал о Откат установщика Windows до.Может стоит прочитать.