Working with WiX Standard Bootstrapper Application
As described in the introduction to building installation package bundles, every bundle requires a bootstrapper application DLL to drive the Burn engine. Custom bootstrapper applications can be created but require the developer to write native or managed code. Therefore, the WiX toolset provides a standard bootstrapper application that developers can use and customize in particular ways.
There are several variants of the WiX Standard Bootstrapper Application.
- WixStandardBootstrapperApplication.RtfLicense - the first variant displays the license in the welcome dialog similar to the WixUI Advanced.
- WixStandardBootstrapperApplication.HyperlinkLicense - the second variant provides an optional hyperlink to the license agreement on the welcome dialog, providing a more modern and streamlined look.
- WixStandardBootstrapperApplication.HyperlinkSidebarLicense - the third variant is based on HyperlinkLicense but provides a larger dialog and larger image on the initial page.
- WixStandardBootstrapperApplication.RtfLargeLicense - this variant is similar to RtfLicense but is a larger dialog and supports the option of displaying the version number.
- WixStandardBootstrapperApplication.HyperlinkLargeLicense - this variant is similar to HyperlinkLicense but is a larger dialog and supports the option of displaying the version number.
To use the WiX Standard Bootstrapper Application, a BootstrapperApplicationRef element must reference one of the above identifiers. The following example uses the bootstrapper application that displays the license:
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Bundle>
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" />
<Chain>
</Chain>
</Bundle>
</Wix>
HyperlinkLargeTheme, HyperlinkSidebarTheme, and RtfLargeTheme can optionally display the bundle version on the welcome page:
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension">
<Bundle>
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense">
<bal:WixStandardBootstrapperApplication
LicenseFile="path\to\license.rtf"
ShowVersion="yes"
/>
</BootstrapperApplicationRef>
<Chain>
</Chain>
</Bundle>
</Wix>
When building the bundle, the WixBalExtension must be provided. If the above code was in a file called "example.wxs", the following steps would create an "example.exe" bundle:
candle.exe example.wxs -ext WixBalExtension
light.exe example.wixobj -ext WixBalExtension
The following topics provide information about how to customize the WiX Standard Bootstrapper Application: