제품의 여러 부 버전을 설치하려면 WiX 프로젝트를 구성해야합니다. IE : 1.0, 1.1 및 1.3을 설치할 수 있습니다. 1.2를 설치하려고하면 작동하지만 1.1로 시도하면 진행하기 전에 이전 1.1 설치가 제거됩니다.여러 버전을 설치하지만 동일한 부 버전을 제거하도록 WiX 프로젝트를 구성하십시오.
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion Minimum="$(var.MajorMinorVersion)" IncludeMinimum="yes"
Maximum="$(var.VersionNumber)" IncludeMaximum="no" Property="OLDERMINORFOUND"/>
</Upgrade>
UpgradeCode
내 wxi 파일과 MajorMinorVersion
에 정의 된 GUID입니다 VersionNumber
과 동일하지만, 0 (1.1에서 빌드 :
지금까지이 내 Upgrade
태그에있는 것입니다. 버전이 1.1.12 일 때 0). 내가 다른 UpgradeVersion
태그를 만들거나 마이너 버전에서 최대 값을 가지고 검색에서 제외하는 현재 하나를 업데이트
:
<UpgradeVersion Minimum="$(var.MajorMinorVersion)" IncludeMinimum="yes"
Maximum="$(var.NextMinorVersion)" IncludeMaximum="no"/>
나는 두 가지 가능성을 가지고 같은데요
사용자 정의 액션을 사용하여 어떻게 든 NextMinorVersion
을 설정합니다. 어쩌면 대신 속성을 사용합니다.
또는 부 버전이 변경 될 때마다 UpgradeCode를 수동으로 변경하십시오. 또는 guid의 처음 몇 문자가 버전을 나타내며 나머지는 고유해야합니까? 그래도 그게 좋은 생각 인 것 같은데 ...
기본적으로 모든 버전에 대해 하나의 설정 프로젝트 만 있기를 원하면 기본적으로이 작업을 수행하는 가장 좋은 방법은 무엇입니까?
편집
나는 MajorUpgrade
태그에 검토 한 결과,하지만 난 같은 시간에 많은 부 버전을하도록 구성 할 수 있습니다 생각하지 않습니다. 이것에 대한 어떤 빛이라도 감사합니다.
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion Property="OLDERMINORFOUND"
Minimum="$(var.MajorMinorVersion)" IncludeMinimum="yes"
Maximum="$(myprefix.NextMinor($(var.VersionNumber)))" IncludeMaximum="no"/>
</Upgrade>
세부 사항에 대한 내 대답을 참조하십시오.