Начиная с конфигурации для каждой машины.
<Property Id="ALLUSERS" Value="1" />
При этом будет запущена автоматическая проверка для каждой машины (если, я полагаю, если у вас работает элемент MajorUpgrade), которая не подхватывает предыдущую установку для каждого пользователя:
Action start 15:46:35: FindRelatedProducts.
MSI (c) (D0:0C) [15:46:35:496]: FindRelatedProducts: current install is per-machine. Related install for product '{0C6604FB-58EC-48B9-8259-5871EFDADEB9}' is per-user. Skipping...
MSI (c) (D0:0C) [15:46:35:496]: FindRelatedProducts: current install is per-machine. Related install for product '{0C6604FB-58EC-48B9-8259-5871EFDADEB9}' is per-user. Skipping...
Поэтому перед установкой убедитесь, что вы выполняете еще один FindRelatedProducts
вызов для продуктов, которые были установлены в пользовательской области (например, так):
<!-- temporarily switch to per-user install scope-->
<Publish Dialog="MyWelcomeDlg" Control="Next" Property="ALLUSERS" Value="{}">1</Publish>
<!-- find related products that have been installed per-user -->
<Publish Dialog="MyWelcomeDlg" Control="Next" Event="DoAction" Value="FindRelatedProducts">1</Publish>
<!-- switch back to per-machine install scope-->
<Publish Dialog="MyWelcomeDlg" Control="Next" Property="ALLUSERS" Value="1">1</Publish>
Это, в свою очередь, находит установку для каждого пользователя:
Action start 15:46:36: FindRelatedProducts.
FindRelatedProducts: Found application: {0C6604FB-58EC-48B9-8259-5871EFDADEB9}
MSI (c) (D0:88) [15:46:36:716]: PROPERTY CHANGE: Adding WIX_UPGRADE_DETECTED property. Its value is '{0C6604FB-58EC-48B9-8259-5871EFDADEB9}'.
MSI (c) (D0:88) [15:46:36:716]: PROPERTY CHANGE: Adding MIGRATE property. Its value is '{0C6604FB-58EC-48B9-8259-5871EFDADEB9}'.
Существующие продукты будут удалены независимо от того, в какой проверке они найдены.
Action start 15:46:41: RemoveExistingProducts.
RemoveExistingProducts: Application: {0C6604FB-58EC-48B9-8259-5871EFDADEB9}
Примечание на стороне : Это не устраняет основных трудностей, возникающих при наличии установщиков двойного назначения: пользователь 1 на машине может быть установлен в области пользователя, а затем пользователь 2 будет установлен на компьютере , Пользователь 1 увидит обе установки в своей таблице программ / функций, и я не знаю, какая из них имеет приоритет. Поэтому рассмотрите возможность установки только для каждой машины.