Wix 3.11
및 Visual Studio 2017
을 사용합니다. 내 설치 번들은 공존 할 수있는 두 개의 브랜드 (제품 ID가 자동 생성 됨)를 허용하도록 UpgradeCode
을 변경하는 조건부 플래그로 두 번 구축됩니다. 따라서 Brand A
및 Brand B
을 설치하거나 제거 할 수 없으며 둘 중 아무 문제가 발생하지 않도록 할 수 있습니다. 그들은 두 개의 다른 설치로 간주됩니다. 여전히 Wix 코드를 깨끗하고 단순하게 유지하고 싶습니다.side-by-side 설치의 구성 요소가 올바르게 설치 제거되지 않음
이 시나리오는 작동합니다
- 하는 브랜드 A. 를 설치
- 브랜드 A.이
- 제거 브랜드 A.
- I nstall 브랜드 B.
- 브랜드 제거 A. 제어판에서 "A"항목을 제거했지만 파일은 변경되지 않습니다.
이 시나리오 이 작동하지 않습니다 설치
레지스트리의 중요한 값이 여전히 있음을 알 수 있습니다.
<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>
당신이 볼 수 있듯이 는 Key
다른 브랜드 다르지만 Guid
은 동일합니다! 나는 이것이 그 일과 관련이 있다고 생각한다. 다른 브랜드에 대해 다른 지침이 필요할 수 있습니까?
Q :이 문제를 해결하는 가장 좋은 방법은 무엇입니까?