У меня есть одна настройка MSI:
<Product Id="*" ... UpgradeCode="4207FF3B-5E0D-4311-9DFC-B41AA8DE2965" />
<MajorUpgrade DowngradeErrorMessage="Can't downgrade" />
Работает так, как ожидалось:
- Установить продукт
- Перекомпилировать (эффективно генерировать новый идентификатор)
- Запуск нового файла msi вызывает представление изменений, и я могу восстановить или удалить продукт.
Хорошо. Но потом наступает ожог.
Я создал самый упрощенный Bundle, из которого можно поделать. Я использую стандартный загрузочный диск и просто добавляю один MsiPackage:
<MsiPackage SourceFile="$(var.Setup.TargetPath)" />
Проблема заключается в том, что после каждой перекомпиляции я могу снова установить продукт рядом с уже установленным продуктом, не меняя ничего! Это приводит к дублированию записей ARP!
Если я не перекомпилирую и не запускаю exe файл пакета дважды, я получу экран настройки модификации, как и ожидалось. Что я могу сделать, чтобы иметь такое же поведение при записи, как и в случае с MSI?