2013-07-22 7 views
2

제품의 주요 업그레이드를 수행하기 전에
backup 특정 구성/리소스 파일을 필요로하고 이후에 동기화해야하는 설치 시나리오가 있습니다.WIX 주요 업그레이드 : 두 번째 실행에서 사용자 지정 작업 실행

그래서 우리는 백업 파일에 대한 사용자 지정 작업을 실행

<InstallExecuteSequence> 
.. 
     <Custom Action='BackupAppFolder' Before="RemoveFiles"> 
     <![CDATA[(Installed AND NOT REMOVE="ALL") OR (UPGRADINGPRODUCTCODE)]]> 
     </Custom> 
.. 
</InstallExecuteSequence> 

그리고 주요 업그레이드가

로 예정되어
<MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="!(loc.DowngradeMessage)" 
       Schedule="afterInstallInitialize"/> 

'동기화'작업은

<InstallExecuteSequence> 
.. 
     <Custom Action='ResourceSync' Before="InstallFinalize"> 
     (Installed AND NOT REMOVE = "ALL" AND NOT WIX_UPGRADE_DETECTED) 
      OR (NOT Installed AND WIX_UPGRADE_DETECTED) 
     </Custom> 
.. 
</InstallExecuteSequence> 

I로 예정되어
동안 실행되도록 ResourceSync 작업을 예약하고 싶습니다.- 수리/패치
-
을 제거 - -
중에 마이너 업그레이드가

그리고하지 실행 - 주요 업그레이드의 두 번째 실행 즉 새로운 제품
의 설치 새로 설치
- 주요 업그레이 드의 첫 번째 실행 즉, 기존 제품의 제거

편집 : 위의 문제는, 그것은 또한 주요 업그레이 드의 첫 번째 단계에서 실행됩니다.

답변

0

다음보십시오 :

REINSTALL OR PATCH OR (WIX_UPGRADE_DETECTED AND NOT REMOVE="ALL") 
+0

아니 주요 업그레이드 runs..i 모두 work..runs가 두 번째 실행에서 실행하고 싶지 않습니다 만 – Amitd