변경된 구성 요소가 없으면 업그레이드가 제대로 작동하지만 구성 요소가 변경되면 업그레이드가 실패하고 사용자가 수동으로 제거하고 다시 설치해야합니다.Wix Major 업그레이드, 내가 뭘 잘못하고 있니?
일부 조각 : 또한
<Product Id="*" Name="My Application" Language="1033" Version="!(bind.FileVersion.ClientEXE)" Manufacturer="My Company" UpgradeCode="MYGUID-b94a-44eb-8e92-9286f1d89bbd">
<Package Id="*" Description="My Installer" Comments="Copyright My Company 2008" InstallerVersion="200" Compressed="yes" />
<Upgrade Id="MYGUID-b94a-44eb-8e92-9286f1d89bbd">
<UpgradeVersion Language="1033" Property="UPGRADEFOUND" Minimum="0.0.0.0" Maximum="99.99.99.99" IncludeMinimum="yes" IncludeMaximum="yes" />
</Upgrade>
<InstallExecuteSequence>
<RemoveExistingProducts Before="InstallInitialize" />
</InstallExecuteSequence>
다음 레지스트리 키를 제거에서 제거 때때로하지 몇 가지 문제가 나는 이유를 이해하지 않습니다
<Component Id="InstalledRegistry" Guid="SOMEGUID-0a17-4c6b-983d-8f3feb3a7724">
<RegistryKey Id="InstalledRegKey" Root="HKMU" Key="SOFTWARE\MyCompany\Client" Action="createAndRemoveOnUninstall">
<RegistryValue Name="Version" Type="string" Value="!(bind.FileVersion.ClientEXE)" KeyPath="yes"/>
</RegistryKey>
</Component>
가 어떤 부트 스트 래퍼 검사의 그 "REINSTALL = ALL REINSTALLMODE = vamus"를 사용하여 msiexec를 시작할지 여부를 알고 있으므로 제거했지만 레지스트리 키가 제거되지 않으면 설치 프로그램이 업그레이드를 시도하고 자동으로 실패합니다.
더 이상 정보가편집 필요한 경우 알려줘 : 일부 파일이 업데이트되면서 다른 문제는 이후에 있었다. RemoveExistingProducts를 After = "InstallValidate"로 변경하고이를 해결했습니다. 변경된 파일을 업그레이드하는 대신 이전 설치를 완전히 제거하기 때문에 조금 느려지지만 (제대로 감지되지 않는 것 같지만) 작업이 완료됩니다.
그래서 REINSTALL = ALL 및 REINSTALLMODE는 주요 업그레이드에 필요하지 않습니다. 나는 그것이 문제일지도 모른다라고 생각한다. 확인한 후에 수락합니다. – Davy8