Я бы ожидал, что такая обстановка
RemovePreviousVersion = true
в проекте установки приведет к удалению предыдущей версии независимо от того, установлена ли новая версия в другую целевую папку. Это предположение неверно само по себе? Я НЕ менял GUID UpgradeCode.
Однако папка старой версии, а также запись в «Программы и компоненты» остаются.
В моем сценарии текущая целевая установочная папка
"%ProgramFiles(x86)%\MySoftware v1"
Теперь у меня есть обновление основной версии до v2, и я хочу отразить это в папке установки, изменив ее на
"%ProgramFiles(x86)%\MySoftware v2".
Я бы предпочел, чтобы "MySoftware v1" был удален во время обновления.
До изменения целевой папки все работало, как ожидалось. Поэтому я предполагаю, что настройки моего проекта установки в целом верны.
Каковы именно критерии, которые должны совпадать между двумя проектами установки, чтобы определить необходимость удаления предыдущей версии? Насколько я понимаю, UpgradeCode используется для однозначной идентификации проекта, но, как я уже отмечал, я не менял его.