Мы используем управляемый загрузчик.Файлы продукта, не удаляемые после обновления WIX
У нас есть два продукта в нашем комплекте (назовем его BundleName
) - ProductA
и ProductB
. Мы устанавливаем оба продукта, и он отлично работает.
Далее мы изменим версию BundleName
от 1.0.0.0
к 2.0.0.0
и версию MSI на ProductA
от 1.0.0.0
к 2.0.0.0
.
Выполнение обновления. Она завершается успешно, но в журнале BundleName 1.0.0.0
(предыдущей версии пачки, которая должна быть установлена) мы имеем:
Will not uninstall package: ProductA, found dependents: 1
Found dependent: {ffe63ad2-5155-4958-91cc-b0aac330cdb6}, name: BundleName
Will not uninstall package: ProductB, found dependents: 1
Found dependent: {ffe63ad2-5155-4958-91cc-b0aac330cdb6}, name: BundleName
Тем не менее, она отлично работает.
Проблема возникает при удалении обновленного 2.0.0.0 BundleName
. Пакет удаляет его успешно, а logs are clear, , но не удаляет файлы и ключи реестра ProductA
.
Еще одна вещь, которую мы заметили в 2.0.0.0
журналах также немного странно:
Planned package: ProductA, state: Present, default requested: Present, ba requested: Present, execute: **MinorUpgrade**, rollback: None, cache: Yes, uncache: Yes, dependency: Register
Мы изменили первый номер версии, поэтому она должна быть MajorUpgrade
не MinorUpgrade
.
Вот наша конфигурация:
<Product
Id="$(var.ProductCode)"
UpgradeCode="$(var.UpgradeCode)"
Name="$(var.ProductName)"
Language="1033"
Version="$(var.ProductVersion)"
Manufacturer="$(var.Manufacturer)">
<Upgrade Id="$(var.UpgradeCode)" />
<MajorUpgrade DowngradeErrorMessage="A newer version of $(var.ProductName) is already installed."
Schedule="afterInstallInitialize"
AllowSameVersionUpgrades="yes" />
...
Может кто-нибудь объяснить, что мы пропустили?