tags:

views:

42

answers:

1

I have a wix file that includes this snippet:

        <CustomAction Id="DownloadCache" FileKey="CACHEDOWNLOADER.EXE" ExeCommand="/v" Execute="deferred" Return="ignore"/>
        <UI>
            <Dialog Id="ExitDialog" Title="Product Installer" Height="60" Width="250">
...
            </Dialog>
            <Dialog Id="FatalErrorDialog" Title="Product Installer" Height="60" Width="250">
...
            </Dialog>
            <TextStyle Id="DefaultFont" FaceName="Arial" Size="10" />
            <Property Id="DefaultUIFont" Value="DefaultFont" />
            <InstallUISequence>
                <Custom Action="DownloadCache" After="ExecuteAction">(NOT Installed) AND (Not REMOVE)</Custom>
                <Show Dialog="ExitDialog" OnExit="success" />
                <Show Dialog="FatalErrorDialog" OnExit="error" />
            </InstallUISequence>
        </UI>
        <InstallExecuteSequence>
            <Custom Action="DownloadCache" After="WriteRegistryValues">(NOT Installed) AND (Not REMOVE)</Custom>
        </InstallExecuteSequence>

Issue is, resulting .MSI does NOT contain an InstallUISequence table.

I went through this tutorial and above seems correct. I'm definitely missing something here. Any hint? Thanks.

+1  A: 

There must be more then meets the eye here. Even the most simplest fragment below will generate an InstallUISequence table with the bare minimum actions of ValidateProductID, CostInitialize, FileCost, CostFinalize and ExecuteAction. No actual UI elements per say but that's another issue.... ( Are Dialogs Optional Now?? )

<Wix...>
  <Product...>
    <Package.../>
  </Product>
</WiX>
Christopher Painter
Definitely, it's a big project with some includes... I'm suspecting on some element explicitly removing that table before my wix gets compiled.
Ariel
Well the only way I know how to do this is to author a InstallUISequence Element followed by a <StandardAction Suppress="yes"/> for each of the actions that I mentioned and then turn off Windows Installer validation to ignore the error messages from WiX. I think you'd really have to go out of your way to do this.
Christopher Painter