2012-02-23 1 views
1

속성을 사용하여 서비스 시작 유형을 설정하는 방법이 있습니까? WiX는 어떤 이유로 부동산을 인식하지 못합니다. 이것은 어렵지 않아야하지만, 나는 그것을 작동시키는 데 어려움을 겪고있다. 더 정확하게Wix - 속성을 사용하여 서비스 시작 유형 설정, 속성을 인식 할 수 없습니까?

<Property Id="StartUpType" Value="auto" /> 
... 
... 
<Component Id="..." Guid="..."> 
<File Id='...' Name='...' DiskId='1' Source='...' KeyPath='yes'/> 
<ServiceInstall 
    Id="..." 
    Type="ownProcess" 
    Name="..." 
    DisplayName="..." 
    Description="..." 
    Start="[StartUpType]" 
    Account="[SERVICEACCOUNT]" 
    Password="[SERVICEPASSWORD]" 
    ErrorControl="normal" 
    Vital="yes" 
    Interactive="no" /> 
<ServiceControl Id="ServiceControl1" Stop="uninstall" Remove="both" Name="..." Wait="yes" /> 

,

Start="[StartUpType]" 

내 porperty을 인식하지 못합니다이 라인.

오류 : ServiceInstall/@ Start 속성의 값인 [StartUpType]은 legal 옵션 중 하나가 아닙니다 : 'auto', 'demand'또는 'disabled'.

내 재산을 인식하도록하는 제안이 있으십니까? 감사!

답변

2

두 가지가 있지만 형식이 지정된 Windows Installer의 열만 [속성] 대체를 사용할 수 있습니다. 런타임은 런타임입니다. 이를 해결할 수있는 유일한 방법은 구성 요소가 상호 배타적 인 조건을 가지고 ServiceInstall 테이블을 여러 가지로 구현하여 1 개만 설치되도록하는 것입니다.

또한 조절기 공용 및 개인 속성이 UI에서 실행 순서로 유지되지 않으므로 Secure 특성 (보안 사용자 지정 공용 속성)으로 표시된 공용 속성 [PROPERTY] 만 대체에 의존 할 수 있습니다.

전처리 경로는 비슷하지만 다른 MSI를 작성하려는 경우에만 작동합니다. 설치 시간 변경 지점을 원한다면 SQL 임시 테이블을 활용하는 사용자 지정 작업을 사용하여 상호 배타적 인 구성 요소 경로 또는보다 힘차게 동적으로 생성 된 ServiceInstall 테이블 경로로 이동해야합니다. (훨씬 더 세게 ...)

+0

고마워. 나를 위해 서비스 시작 유형을 변경하는 라디오 버튼 대화 상자가 있습니다. 그래서 저는 2 중 구성 요소 라우트로 갈 것이라고 생각합니다. – Jazon

+0

다른 시작 유형에 대해 두 가지 다른 .exe를 사용하거나 두 개의 다른 구성 요소에서 동일한 파일을 설치해야합니다. 두 가지 모두 나쁜 것처럼 보입니다. – Cavaler

관련 문제