无法看到进度对话框

时间:2011-04-01 15:02:40

标签: wix windows-installer progressdialog

我修改了Wix的InstallDir对话框。我删除了许可协议并添加了我自己的对话框。我使用以下方式显示第一个对话框:

    <InstallUISequence>
        <Show Dialog="WelcomeDlg" Before="ExecuteAction"/>          
    </InstallUISequence>    

对话框序列工作正常,但用户在最后一个对话框中单击“安装”时,对话框消失,应用程序静默安装,没有任何进度条。这不是WiX的InstallDir对话框集的默认行为。进度条必须存在。我想知道它为什么不显示。有什么想法吗?

4 个答案:

答案 0 :(得分:3)

您正在安排显示WelcomeDlg,然后运行安装的ExecuteAction。因此,从不显示进度对话框。

答案 1 :(得分:2)

以下是我在设置模板中<InstallUISequence>元素中的内容:

    <Show Dialog="PrepareDlg" After="LaunchConditions" />
    <Show Dialog="WelcomeDlg" After="MigrateFeatureStates">NOT Installed</Show>
    <Show Dialog="ResumeDlg" After="WelcomeDlg">Installed AND (RESUME OR Preselected)</Show>
    <Show Dialog="MaintenanceWelcomeDlg" After="ResumeDlg">Installed AND NOT RESUME AND NOT Preselected</Show>
    <Show Dialog="ProgressDlg" After="MaintenanceWelcomeDlg" />

您必须已从InstallUISequence中删除ProgressDlg,因此它不会显示。注意:ProgressDlg是无模式的,这意味着安装程序在创建对话框后获得控制权。 InstallSequence将进度消息发送到ProgressDlg以更新其状态。

答案 2 :(得分:1)

如果您正在修改标准MSI对话框,我相信您必须确保安排所有这些对话框以确保您的自定义UI正确显示。

答案 3 :(得分:0)

我必须完全删除这一行:

 <InstallUISequence>
        <Show Dialog="WelcomeDlg" Before="ExecuteAction"/>          
    </InstallUISequence>  

之后一切正常!