(РЕДАКТИРОВАТЬ: Вопрос изменен.)
У меня есть продукт с установщиком, который был создан InstallShield 2010 и, похоже, все учетные записи устанавливают просто как «новую» установку.
Периодически я изменяю содержимое установки, когда обновляю тот или иной компонент, исправляя ошибки и так далее. В то время я пытаюсь изменить номера версий в метаданных файлов, которые были обновлены, но есть компоненты, для которых это невозможно. Конечно, они всегда заканчиваются более поздними датами изменения. Я также изменяю номер версии продукта в данных MSI. Однако я не менял код пакета каждый раз.
Когда некоторые пользователи запускают установщик в системе, в которой мой продукт уже присутствует, им предлагается пользовательский интерфейс режима обновления («Вы хотите обновить?» И т. Д.), И кажется, что установщик завершает работу. Однако обновленные файлы не всегда перезаписывают старые файлы до тех пор, пока впоследствии не будет запущена установка восстановления, особенно если номер версии не изменился, и теперь есть доказательства того, что пометка содержимого компонента с помощью принудительной перезаписи не выполняется. не меняйте это поведение.
Что здесь происходит? Могу ли я получить лучший результат? Нужно ли менять код пакета при каждой проверке продукта или обновлении компонента? (Изменить: Код пакета меняется каждый раз, когда я собираю релиз, поэтому это не является причиной проблемы.)
Редактировать: Это интерфейс обновления, но обслуживание после обновления - это то, что фактически завершает желаемую установку.