2013-05-31 3 views
2

설치가 완료된 후 간단한 FireBreath WiX 스크립트를 수정하여 간단한 메시지를 표시합니다. 때로는 너무 빠르기 때문에 사용자는주의를 기울일 기회가 없습니다.WiX 설치 프로그램에서 대화 상자를 표시 할 수 없습니다.

나는이

<?xml version="1.0" encoding="UTF-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 
    <Product Id="*" "> 
     <Package ... /> 
     <Upgrade Id="{369b048a-9f97-5e15-8ce3-c983fa5764d3}"> 
      <UpgradeVersion 
       Property="OLD_VERSION_FOUND" 
       Minimum="0.0.1" IncludeMinimum="yes" 
       Maximum="0.3.3.3" IncludeMaximum="yes" 
       OnlyDetect="no" IgnoreRemoveFailure="yes" 
       MigrateFeatures="yes" /> 
     </Upgrade> 
     <Property Id="MSIRESTARTMANAGERCONTROL" Value="Disable" /> 
     <InstallExecuteSequence> 
      <RemoveExistingProducts After="InstallInitialize" /> 
      <InstallExecute After="RemoveExistingProducts" /> 
     </InstallExecuteSequence>   

     <Directory Id="TARGETDIR" Name="SourceDir"> 
      ... 
     </Directory> 

     <Feature Id="MainPluginFeature" Title="Plugin" Level="1"> 
      <ComponentRef Id="InstallDirComp"/> 
      <ComponentRef Id="PluginNameDirComp"/> 
      <ComponentRef Id="CompanyDirComp"/> 
      <ComponentGroupRef Id="PluginDLLGroup"/> 
     </Feature> 

     <UI> 
     <Property Id="DefaultUIFont">DlgFont10</Property> 
     <TextStyle Id="DlgFont10" FaceName="Tahoma" Size="10" /> 

     <Dialog Id="CompleteDlg" 
      Width="370" 
      Height="270" 
      Title="Plugin installed"> 

      <Control Id="Description" 
       Type="Text" 
       X="50" 
       Y="70" 
       Width="220" 
       Height="80" 
       Text="Installation complete, return to web browser." /> 

      <Control Id="Finish" 
       Type="PushButton" 
       X="180" 
       Y="243" 
       Width="56" 
       Height="17" 
       Default="yes" 
       Cancel="yes" 
       Text="OK"> 

      <Publish Event="EndDialog" Value="Exit" /> 
      </Control> 
     </Dialog> 

     <InstallUISequence> 
      <Show Dialog="CompleteDlg" OnExit="success" /> 
     </InstallUISequence> 

     <AdminUISequence> 
      <Show Dialog="CompleteDlg" OnExit="success" /> 
     </AdminUISequence> 
     </UI> 
    </Product> 
</Wix> 

파일 WXS했지만 나는 그것을 빌드 할 때, 나는 이러한 오류 메시지를
오류이 오류 LGHT0204를 얻을 : ICE20을 : 표준 대화가 'FilesInUse은'대화 테이블에서 찾을 수 없습니다
오류 3 오류 LGHT0204 : ICE20 : ErrorDialog 속성이 속성 테이블에 지정되지 않았습니다. ErrorDialog 이름을 결정하는 데 필요한 등록 정보
오류 4 오류 LGHT0204 : ICE20 : 'InstallUISequence'시퀀스 테이블에서 FatalError 대화 상자/작업을 찾을 수 없습니다.
오류 5 오류 LGHT0204 : ICE20 : 'AdminUISequence'시퀀스 테이블에서 FatalError 대화 상자/동작을 찾을 수 없습니다.
오류 6 오류 LGHT0204 : ICE20 : 'InstallUISequence'시퀀스 테이블에서 UserExit 대화 상자/작업을 찾을 수 없습니다.
오류 7 오류 LGHT0204 : ICE20 : 'AdminUISequence'시퀀스 테이블에서 UserExit 대화 상자/동작을 찾을 수 없습니다.

다른 대화 상자는 필요하지 않으며이 대화 상자 만 필요합니다. 이 문제를 해결하는 방법? 이 메시지를 무시해도됩니까?

답변

4

패키지에 대화 상자가있는 경우 Windows Installer는 대부분 오류 조건하에 UI를 표시하도록 최소 설정을 요구합니다. ICE20 documentation에는 전체 목록이 있습니다.

+0

오류를 무시해도 안전합니까? 여전히 msi 파일을 생성하기 때문입니다. 나는 단지 대화 상자에 무엇을 보여줄지 모릅니다. 오류 대화 상자에서 어떤 오류가 발생했는지를 알 수있는 방법이 있습니까? – Sergi0

+2

대화 상자가 없다면 MSI는 자동으로 실패합니다. DialogRef를 사용하여 WixUIExtension에서 ErrorDlg를 가져 오는 것이 좋습니다. MSI 요구 사항에 맞게 오류 대화 상자가 이미 있기 때문에 . –