Author Bootstrapper Application for a Bundle
Every bundle requires a bootstrapper application to drive the Burn engine. The <BootstrapperApplication> element is used to define a new bootstrapper application. The <BootstrapperApplicationRef> element is used to refer to a bootstrapper application that exists in a <Fragment> or WiX extension.
The WiX Standard Bootstrapper Application exists in the WixBalExtension.dll. The following shows how to use it in a bundle:
<?xml version="1.0"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Bundle> <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" /> <Chain> </Chain> </Bundle> </Wix>
The WiX Standard Bootstrapper Application may not provide all functionality a specialized bundle requires so a custom bootstrapper application DLL may be developed. The following example creates a bootstrapper application using a fictional "ba.dll":
<?xml version="1.0"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Bundle> <BootstrapperApplication SourceFile="path\to\ba.dll" /> <Chain> </Chain> </Bundle> </Wix>
Inside the <BootstrapperApplication> element and <BootstrapperApplicationRef> element, you may add additional payload files such as resources files that are required by the bootstrapper application DLL as follows:
<?xml version="1.0"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Bundle> <BootstrapperApplication SourceFile="path\to\ba.dll"> <Payload SourceFile="path\to\en-us\resources.dll" /> <PayloadGroupRef Id="ResourceGroupforJapanese" /> </BootstrapperApplication> <Chain> </Chain> </Bundle> </Wix>
This example references a payload file that is on the local machine named resources.dll, as well as a group of payload files that are defined in a <PayloadGroup> element inside a <Fragment> elsewhere.
The next step is to add installation packages to the chain.