MSI установщик удалить

У меня есть установщик MSI (проект установки VS2008). Я хотел бы, чтобы установщик сначала определил, установлено ли на компьютере программное обеспечение. Если это так, удалите это программное обеспечение и продолжите установку.

Существует ряд свойств, таких как DetectNewerInstalledVerision, RemovePreviousVersions и ProductCode, которые, по-видимому, подразумевают, что это возможно. В настоящее время мне приходится каждый раз перегенерировать ProductCode и получать дополнительную запись в списке установленных программ (Панель управления -> Установка и удаление программ).

Есть ли способ, которым я могу настроить установщик для автоматического удаления любых предыдущих версий?

1 ответ

Решение

Вы правы - это возможно.

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

Другие вопросы по тегам