删除“安装成功”对话框

时间:2015-02-16 08:17:31

标签: wix windows-installer

我遇到了与wix安装程序有关的问题。 我想在安装我的应用程序时删除最后一个对话框窗口。最后一个对话框仅显示消息"安装成功"并且用户必须单击完成。 我希望在进度条达到100%后自动关闭安装。

我尝试了Changing the UI sequence of a built-in dialog set方法,但是我遇到了很多错误,无法让它发挥作用。 我也试过用户" joylons"回答here,但也没有成功。

还有其他办法可以让它发挥作用吗?或者有人可以用我提到的方法帮助我吗? 我正在使用WixUI_Minimal方案:

<UI>
    <UIRef Id="WixUI_Minimal"/>
</UI>

修改 基于其他答案,我尝试使用WixUI_Common并更改序列。

<UI>
      <Property Id="WIXUI_INSTALLDIR" Value="TARGETDIR" />
      <Property Id="WixUI_Mode" Value="Custom" />

      <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" />

      <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />

      <DialogRef Id="ProgressDlg" />
      <DialogRef Id="ErrorDlg" />
      <DialogRef Id="FilesInUse" />
      <DialogRef Id="FatalError" />
      <DialogRef Id="UserExit" />

      <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>
      <Publish Dialog="WelcomeDlg" Control="Next" Event="EndDialog" Value="Return" Order="1"></Publish>
     </UI>
     <UIRef Id="WixUI_Common" />

      <InstallUISequence>
        <Show Dialog="WelcomeDlg" Sequence="1"/>
      </InstallUISequence>

      <AdminUISequence>
        <Show Dialog="WelcomeDlg" Sequence="1"/>
      </AdminUISequence>

对InstallUISequence或AdminUISequence的更改似乎没有任何影响。安装程序仍显示三个对话框:许可证,进度,然后是完成的对话框。 我试图删除Publish Dialog =&#34; ExitDialog&#34;并得到错误:&#34;退出对话框/操作未在&#39; InstallUISequence&#39;中找到序列表&#34;

EDIT2:我改变了我的UI标签(根据Chris Eelmaa的回答):

<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />     
  <UIRef Id="WixUI_Minimal"/>
  <UI>
    <InstallUISequence>
      <Show Dialog="ExitDialog" OnExit="success">0</Show>
    </InstallUISequence>
    <AdminUISequence>
      <Show Dialog="ExitDialog" OnExit="success">0</Show>
    </AdminUISequence>
  </UI>

不幸的是,对话框仍然在安装过程结束时显示...

EDIT3(25.03.15) 问题似乎是我正在使用的引导程序。没有引导程序Chris Eelmaa的解决方案可行。引导程序似乎忽略了我在.wxs文件中所做的所有更改,仍然显示ExitDialog。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

这很简单,基本上你需要在安装成功时覆盖计划的“显示退出对话框”,并说它永远不会发生。 “0”表示禁用。

<InstallUISequence>
    <Show Dialog="ExitDialog" OnExit="success">0</Show>
</InstallUISequence>

<AdminUISequence>
    <Show Dialog="ExitDialog" OnExit="success">0</Show>
</AdminUISequence>