2013-02-12 4 views
1

웹을 크롤링했지만 해결책이 없거나 단서가 없습니다.Wix 3.6 : 조건부로 "RemoveExistingProducts"트리거

설치시 조건부로 RemoveExistingProducts 작업을 수행해야합니다. 이 잘 작동

<MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="No downgrades allowed" /> 

: 내 설정은 다음과 같이 기본적으로 기존의 모든 제품을 제거 할. 하지만 사용자가 내 UI에서 확인란을 선택 취소하면 설치 프로그램이 이전 제품 버전을 제거하지 않기를 원합니다. 나는 myVar을 설정할 수 있습니다,

<Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" /> 

    <Upgrade Id="3E700BA7-CAF8-4C49-A53A-70F70DE0C8D6"> 
     <UpgradeVersion 
      Minimum="1.0.0.0" Maximum="99.0.0.0" 
      Property="PREVIOUSVERSIONSINSTALLED" 
      IncludeMinimum="yes" IncludeMaximum="no" OnlyDetect="myVar" /> 
    </Upgrade> 

    <Property Id="myVar" Value="no" /> 

바라고 있지만, 이것은 불법입니다 : 그래서 나는 이런 식으로 뭔가를 시도했다.

아무도 내 문제를 해결하는 방법을 알고 있습니까?

그 이유는 사용자가 위험을 감수하면서 여러 버전의 제품을 설치하도록 허용하기 때문입니다. 이는 고객의 요청입니다.

답변

0

기본적으로 UI 앞에 RemoveExistingProducts이 실행됩니다.

당신은 InstallFinalize 후 수와 조건을 트리거 할 RemoveExistingProducts 조치를 재배 선 시도 할 수 :

<RemoveExistingProducts After="InstallFinalize"> 
    NOT CHECKBOX 
</RemoveExistingProducts> 

이 귀하의 경우 운임 얼마나 확실하지.

확인란을 사용하여 대화 상자를 종료하고 제품을 수동으로 제거 할 때 사용자 지정 작업을 실행 해 볼 수도 있습니다. 어쩌면 심지어 사용자 정의 동작에서 RemoveExistingProducts의 실행을 강제 할 수 있습니다.

마지막 해결책은 사용자에게 제품을 제거할지 여부를 묻는 별도의 제거 프로그램을 만드는 것입니다. 실제 설치 프로그램을 따르십시오.