2011-10-11 3 views
1

세 가지 기능 세트 (Client/Developer 및 Server)를 다루는 Wix 설치 프로그램에 문제가 있습니다.Wix 설치 프로그램 제거시 StartIIS7 구성 변경 사용 안 함

클라이언트를 선택하면 설치 프로그램에서이 기능에 포함되지 않은 구성 요소에 정의 된 IIS 작업을 수행 할 필요가 없습니다. 나는 "클라이언트"구성 요소 유형이 설치되는 경우에만 실행되는 사용자 지정 작업

<!-- Only perform the IIS Configuration if we have installed the Admin Application--> 
<Custom Action="SkipIISCA" Before="InstallValidate"> 
    <![CDATA[COMPONENT_TYPE = 2]]> 
</Custom> 

을 추가로

설치에 나는, 문제를하지 않습니다. 사용자 지정 작업 중 하나를 설치 제거에 대한 수리가 설치에서 실행하면 문제가 발생 1

에 SKIPCONFIGUREIIS 속성을 설정합니다. 제품을 제거하거나 복구 할 때 IIS 구성이 시도되고 사용자 지정 작업이 실행되지 않아이 동작을 사용하지 않는 것으로 보입니다.

레지스트리 설정에 따라 제거/복구시 SKIPCONFIGUREIIS 설정을 지정하는 좋은 방법이 있습니까?

감사합니다.

답변

0

설치 중에 설정되는 속성 중 일부는 숨겨진 Windows 디렉터리 인 c : \ windows \ installer (설치마다 하나씩)에 저장됩니다. 제거/복구 세션의 로그에서 캐싱 된 파일이 열렸으며 새 제거/복구 세션에 대한 속성이 설정되어 있음을 알 수 있습니다. (또는이 제거 임시 파일을 제거/복구 로그에서 찾을 수 있으며 Orca로 열 수 있습니다. Orca의 "속성"아래에 저장된 모든 설치 속성의 값이 표시됩니다.

위의 설명에 따르면 사용자 지정 동작이 설정되는 속성은 저장되지 않지만 COMPONENT_TYPE 값은 사용 가능합니다 (사용자 지정 동작에서 SKIPCONFIGUREIIS를 설정하는 데 사용 된 동일한 입력).

그렇다면, 단지 이러한 속성을 기반으로 IIS 구성 조치를 한 경우 : 당신이 ConfigureIIS이 제거/수리시에 설정 한 기능에 대해 발생하지 않는 경우, 바로 이러한를 사용

<Custom Action="Your_Configure_IIS_Action" Before="InstallFinalize"> 
(NOT SKIPCONFIGUREIIS) OR (COMPONENT_TYPE = 2)</Custom> 

속성 :

<Custom Action="Your_Configure_IIS_Action" Before="InstallFinalize"> 
(NOT UPGRADINGPRODUCTCODE) AND (REMOVE="ALL")</Custom> 

또 다른 한 가지 생각은 원래 설치 프로그램이 한 수준에 있었던 것입니다. 클라이언트 및 제거/복구 서버 수준에서 누군가에 의해 수행되고 있습니다. 원래 설치의 component_type이 저장됩니다. 이 경우 설치 제거/복구 중에 component_type이 결정되는 방식 (대화 상자 또는 다른 속성을 통해)에 대한 점검을 추가하는 것을 고려할 수 있습니다.