Wix 并行安装中的组件未正确卸载
使用Wix 并行安装中的组件未正确卸载,wix,Wix,使用Wix 3.11和Visual Studio 2017。我的安装包构建了两次,使用条件标志更改UpgradeCode,以允许两个品牌共存(产品Id自动生成)。因此,我希望能够安装和/或卸载品牌A和品牌B,而不会对这两个品牌中的任何一个造成问题。它们被视为两种不同的装置。尽管如此,我还是希望保持我的Wix代码干净简单 此场景在以下情况下起作用: 安装品牌A 卸载品牌A 此方案不起作用: 安装品牌A 安装品牌B 卸载品牌A。控制面板中的条目“A”已消失,但文件保持不变 我可以看到注册表中的重要值
Wix 3.11
和Visual Studio 2017
。我的安装包构建了两次,使用条件标志更改UpgradeCode
,以允许两个品牌共存(产品Id自动生成)。因此,我希望能够安装和/或卸载品牌A
和品牌B
,而不会对这两个品牌中的任何一个造成问题。它们被视为两种不同的装置。尽管如此,我还是希望保持我的Wix代码干净简单
此场景在以下情况下起作用:
<DirectoryRef Id="INSTALLLOCATION">
<Component Id="MyExecutables" Guid="12345678-ABCD-1234-5678-111122223333" Win64="$(var.Win64)">
<RegistryValue Root="HKCU" Key="Software\[Manufacturer]\$(var.Brand)\Uninstall" Name="InstalledSoftware" Value="1" Type="integer" KeyPath="yes" />
</Component>
</DirectoryRef>
正如您所看到的,不同品牌的键
是不同的,但是Guid
是相同的!我相信这与此有关。也许我需要不同品牌的不同guid
Q:解决此问题的最佳方法是什么?Wix要求每个组件都有自己的唯一GUID,即使有多个组件执行完全相同的操作。因此,请确保您的组件不共享相同的GUID。您可以轻松获取GUID