2016-08-16 12 views
-1

버전 2.4.0을 설치했습니다. 주요 업데이트 (그것은 단지 theese 파일을 포함) 내 제품에 몇 가지 dll 파일을 교체해야WIX : 이전 버전을 제거하지 않고 업그레이드하십시오.

<?define Version="2.4.1.0"?> 
<Product Id="*" Name="SuperProduct" Language="1033" Version="$(var.Version)" Manufacturer="MyCompany" UpgradeCode="$(var.UpgradeCode)"> 

<Upgrade Id="$(var.UpgradeCode)"> 
    <UpgradeVersion Minimum="1.0.0.0" Maximum="3.0.0.0" Property="PREVIOUSVERSIONSINSTALLED" IncludeMinimum="yes" IncludeMaximum="no" IgnoreRemoveFailure="yes" /> 
</Upgrade> 

<MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="Cannot downgrade!" IgnoreRemoveFailure="yes" AllowSameVersionUpgrades="no" /> 

: 그리고는 주요 업데이트가 있습니다. 그러나 설치 프로그램은 이전 버전을 제거하고 새 버전을 설치합니다. 새 파일을 제외한 모든 이전 파일이 제거됩니다. 이전 파일을 제거하지 않고 업그레이드를 설치하려면 어떻게합니까 (RemoveExistingProducts 사용 안 함). 이것은 MajorUpgrade 태그를 제거하고 Program Files (SuperProduct 2.4.0 및 SuperProduct 2.4.1)에서 2 개의 프로그램을 수신하는 옵션이 아닙니다. 아이디어가 있습니까?

+0

의견을 답변으로 이동했습니다. –

답변

1

업그레이드 대신 패치를 만드십시오. 이것은 정확히 몇 가지 핵심 파일을 대체하고 나머지는 그대로 두는 패치입니다. 아직 패치를 설치하지 않았지만 단계는 wix 자습서 또는 Nick Ramirez의 Wix 3.6 서적에 있어야합니다. 사소한 업그레이드도 가능합니다. 업그레이드 유형 간의 차이점에 대해 100 % 확실하지 않습니다. 항상 주요 업그레이드 만 구현합니다.

+0

패치가 아닌 주요 업그레이드를해야합니다. – Anton23

+0

큰 업그레이드가 정의에 의해 작동하는 방식이 아닙니다. 이전의 모든 파일을 계속 사용하려면 주요 업그레이드 설치 프로그램에도 포함시켜야합니다. RemoveExistingProducts는 프로그램 추가/제거 목록에서 해당 항목을 제거하므로 목록에 두 개의 항목이 있다는 것을 의미합니다. 왜 당신은 ** 주요 업그레이드가 필요합니까 **? 마이너 업그레이드 및 패치의 목적은 몇 개의 파일을 대체하고 버전을 업데이트 (마이너 업그레이드)하거나 다른 모든 이전 파일을 변경하지 않고 버전을 그대로 유지 (패치)하는 것입니다. –

+0

그리고 패치가 아닌 마이너 업데이트를 만드는 방법은 무엇입니까? – Anton23

관련 문제