2009-08-10 5 views
5

Próbowałem uzyskać InstallDirDlg, aby pokazać po FeatureDlg, ale z jakiegoś powodu pojawia się okno dialogowe postępu instalacji. Tak, stworzyłem ten prosty projekt testowy, który ma 4 cechy (każdy instaluje plik) ...Jak uzyskać InstallDirDlg po FeatureDlg

Oto kod, dzięki za pomoc ...

<Fragment> 
<UI Id="UserInterface"> 
    <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" /> 

    <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" /> 
    <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="9" Bold="yes" /> 
    <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" /> 

    <DialogRef Id="BrowseDlg" /> 
    <DialogRef Id="DiskCostDlg" /> 
    <DialogRef Id="ErrorDlg" /> 
    <DialogRef Id="FatalError" /> 
    <DialogRef Id="FilesInUse" /> 
    <DialogRef Id="MsiRMFilesInUse" /> 
    <DialogRef Id="PrepareDlg" /> 
    <DialogRef Id="ProgressDlg" /> 
    <DialogRef Id="ResumeDlg" /> 
    <DialogRef Id="UserExit" /> 

    <DialogRef Id="SetupTypeDlg" /> 
    <DialogRef Id="FeaturesDlg"/>  

    <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="SetupTypeDlg">1</Publish> 

    <Publish Dialog="SetupTypeDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish> 
    <!-- Typical install: add all features except web service. --> 
    <Publish Dialog="SetupTypeDlg" Control="TypicalButton" Event="AddLocal" Value="ALL" Order="10"></Publish> 
    <Publish Dialog="SetupTypeDlg" Control="TypicalButton" Event="Remove" Value="FEATUREB" Order="20"></Publish> 
    <Publish Dialog="SetupTypeDlg" Control="TypicalButton" Event="Remove" Value="FEATUREC" Order="30"></Publish> 
    <Publish Dialog="SetupTypeDlg" Control="TypicalButton" Event="Remove" Value="FEATURED" Order="40"></Publish> 
    <Publish Dialog="SetupTypeDlg" Control="TypicalButton" Event="NewDialog" Value="InstallDirDlg" Order="50">1</Publish> 

    <!-- Custom install: display feature tree. --> 
    <Publish Dialog="SetupTypeDlg" Control="CustomButton" Event="NewDialog" Value="FeaturesDlg" Order="10">1</Publish> 



    <!-- Complete install: all features. Errors out if IIS is absent. --> 
    <Publish Dialog="SetupTypeDlg" Control="CompleteButton" Event="AddLocal" Value="ALL" Order="10"></Publish> 
    <Publish Dialog="SetupTypeDlg" Control="CompleteButton" Event="NewDialog" Value="InstallDirDlg" Order="30">1</Publish> 

    <Publish Dialog="FeaturesDlg" Control="Back" Event="NewDialog" Value="SetupTypeDlg">1</Publish> 
    <Publish Dialog="FeaturesDlg" Control="Install" Event="DoAction" Value="MissingFeature" Order="10"> 
    <![CDATA[(NOT(&FEATUREA=3) AND NOT(&FEATUREB=3) AND NOT(&FEATUREC=3) AND NOT(&FEATURED=3))]]> 
    </Publish> 
    <Publish Dialog="FeaturesDlg" Control="Install" Event="NewDialog" Value="InstallDirDlg" Order="20">1</Publish> 

    <Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="SetupTypeDlg"></Publish> 
    <Publish Dialog="InstallDirDlg" Control="Next" Event="SetTargetPath" Value="[WIXUI_INSTALLDIR]" Order="10">1</Publish> 
    <Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg" Order="20">1</Publish> 
    <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Property="_BrowseProperty" Value="[WIXUI_INSTALLDIR]" Order="10">1</Publish> 
    <Publish Dialog="InstallDirDlg" Control="ChangeFolder" Event="SpawnDialog" Value="BrowseDlg" Order="20">1</Publish> 


    <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish> 

    <!-- Back button declaration so no error on build --> 
    <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="InstallDirDlg"></Publish> 
</UI> 

<UIRef Id="WixUI_Common" /> 
<UIRef Id="WixUI_ErrorProgressText" /> 

</Fragment> 
+0

Mam ten sam problem tutaj ... – vIceBerg

Odpowiedz

0

Po wykonaniu kilku testów, znalazłem że bez tej linii:

<Property Id="ALLUSERS" Value="1"/> 

który ustawia instalator dla zainstalowania na maszynie kolejności podanej powyżej zawiedzie za każdym razem bez względu na to co dialogowe można umieścić po FeaturesDlg. Jeśli ktokolwiek znajdzie inne rozwiązanie, chciałbym to zobaczyć.

Powiązane problemy