我使用WIX获得了MSI版本。该包具有InstallScope="perMachine"
属性。
我的产品取决于某些版本的某些第三方产品。 MSI使用Upgrade
元素检查先决条件。
我想通过AD / GPO部署我的MSI。 “计算机配置”下的部署成功,但我希望在“用户配置”下发布(未分配)部署。在这种情况下,用户可以在程序和功能 - 从网络安装程序中查看我的安装,并可以选择:安装或不安装我的产品。
但已发布的部署失败。 有部分MSI日志:
MSI (c) (38:CC) [16:22:32:906]: Product {D4_____________F9} is admin assigned: LocalSystem owns the publish key.
MSI (c) (38:CC) [16:22:32:906]: Product {D4_____________F9} is managed.
MSI (c) (38:CC) [16:22:32:906]: Running product '{D4____________F9}' with elevated privileges: Product is assigned.
MSI (c) (38:CC) [16:22:32:906]: Product not registered: beginning first-time install
MSI (c) (38:CC) [16:22:32:906]: Determined that existing product (either this product or the product being upgraded with a patch) is installed per-user.
MSI (c) (38:CC) [16:22:32:906]: PROPERTY CHANGE: Deleting ALLUSERS property. Its current value is '1'.
...跳过... 的
Action begin 16:22:32: FindRelatedProducts.
MSI (c) (38:CC) [16:22:32:922]: FindRelatedProducts: current install is per-user. Related install for product '{69_______________BD}' is per-machine. Skipping...
MSI (c) (38:CC) [16:22:32:922]: FindRelatedProducts: current install is per-user. Related install for product '{69_______________BD}' is per-machine. Skipping...
MSI (c) (38:CC) [16:22:32:922]: FindRelatedProducts: current install is per-user. Related install for product '{DD______________23}' is per-machine. Skipping...
Action end 16:22:32: FindRelatedProducts. Return value 1.
然后MSI失败,因为找不到先决条件。
所以我的问题是:为什么安装上下文切换到每个用户?怎么预防呢?也许有一种方法可以抑制在每个用户上下文中跳过FindRelatedProducts?