Проект установки VS 2010 НЕ удаляет предыдущие версии
Я использую проект установки в VS 2010, чтобы установить приложение формы Windows, которое я создал. Проект установки работает отлично, однако, если я обновляю приложение и изменяю номер версии и код обновления проекта установки, он не обновляет приложение на компьютере пользователя при повторном запуске проекта установки. Он пройдет этапы установки и скажет, что установка прошла успешно, однако приложение, которое находится на компьютере пользователя, остается точно таким же и не является более новой версией. Как ни странно, если вы снова запустите проект установки, появится сообщение о том, что эта версия приложения уже установлена и что вы должны использовать программы добавления / удаления, чтобы удалить текущую версию, чтобы продолжить установку. Кто-нибудь еще сталкивался с этой проблемой раньше? Я слышал, что это может быть невозможно при использовании проекта установки в VS 2010, но я надеюсь, что это не так, поскольку этот метод отлично работает для меня, за исключением этой проблемы.
1 ответ
Вы не должны менять UpgradeCode
свойство, это будет иметь именно тот эффект, который вы видите:
предосторожность
UpgradeCode должен быть установлен только для первой версии; он никогда не должен изменяться для последующих версий приложения и не должен изменяться для разных языковых версий. Изменение этого свойства будет препятствовать правильной работе свойств DetectNewerInstalledVersion и RemovePreviousVersions.
Предполагая, что вы хотите удалить старую версию и заменить ее новой (вместо того, чтобы устанавливать их рядом, что на самом деле и делается), вы должны изменить Version
(и MSI и файла (ов), которые обновляются) и ProductCode
(из MSI) и установить RemovePreviousVersions
в True
,
Я столкнулся с той же проблемой.
и я решил изменить эти четыре.
(Я использовал Visual Studio Community 2019)
[установочный проект]
・ Версия
[Проект.Net]
・ Версия
сборки・ Версия файла сборки
・GUID