Проект установки VS 2010 НЕ удаляет предыдущие версии

Я использую проект установки в VS 2010, чтобы установить приложение формы Windows, которое я создал. Проект установки работает отлично, однако, если я обновляю приложение и изменяю номер версии и код обновления проекта установки, он не обновляет приложение на компьютере пользователя при повторном запуске проекта установки. Он пройдет этапы установки и скажет, что установка прошла успешно, однако приложение, которое находится на компьютере пользователя, остается точно таким же и не является более новой версией. Как ни странно, если вы снова запустите проект установки, появится сообщение о том, что эта версия приложения уже установлена ​​и что вы должны использовать программы добавления / удаления, чтобы удалить текущую версию, чтобы продолжить установку. Кто-нибудь еще сталкивался с этой проблемой раньше? Я слышал, что это может быть невозможно при использовании проекта установки в VS 2010, но я надеюсь, что это не так, поскольку этот метод отлично работает для меня, за исключением этой проблемы.

1 ответ

Решение

Вы не должны менять UpgradeCode свойство, это будет иметь именно тот эффект, который вы видите:

предосторожность

UpgradeCode должен быть установлен только для первой версии; он никогда не должен изменяться для последующих версий приложения и не должен изменяться для разных языковых версий. Изменение этого свойства будет препятствовать правильной работе свойств DetectNewerInstalledVersion и RemovePreviousVersions.

(через https://wayback.archive.org/web/20121029130031/https://msdn.microsoft.com/en-us/library/465253cd(v=vs.100).aspx)

Предполагая, что вы хотите удалить старую версию и заменить ее новой (вместо того, чтобы устанавливать их рядом, что на самом деле и делается), вы должны изменить Version (и MSI и файла (ов), которые обновляются) и ProductCode (из MSI) и установить RemovePreviousVersions в True,

Я столкнулся с той же проблемой.
и я решил изменить эти четыре.
(Я использовал Visual Studio Community 2019)

[установочный проект]
・ Версия

[Проект.Net]
・ Версия
сборки・ Версия файла сборки
・GUID

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