ExitDlg is the built-in WixUI dialog sets dialog box dialog box that appears at the end of a successful installation. ExitDlg supports the display of optional and customizable text and an optional check box. That`s where it gets ugly. We can easily override the default EULA license by replacing the WixUILicenseRtf WiX variable as follows: where License.rtf is the name of your custom EULA license file. The disadvantage of this method is that you can only have one license file, which means that no localization is required for this. That is why we need to make a workaround. The license is checked in a dialog box named LicenseAgreementDialog. What we need to do is replace this dialog box and include the localization feature. Below is the script for my main WiX file to create the MSI installation package. In this file, I combined the code to attach the Setup user interface, which contains the following custom dialog boxes: The dialog box is inserted into the original dialog string.
We need to specify which dialog boxes in this string will be switched forward or backward: license agreement and configuration type. We can learn the actual identifiers of these dialog boxes by looking at the source file of WixUI_Mondo: srcextUIExtensionwixlibWixUI_Mondo.wxs in the download source package. The names are LicenseAgreementDlg and SetupTypeDlg, so we`ll designate them in this new dialog box: For example, to remove licenseAgreementDlg from the WixUI_InstallDir set of dialog boxes, follow these steps: stackoverflow.com/questions/16978501/how-to-create-a-bootstrapper-application-without-a-license-agreement-step Each of the WixUI dialog sets contains a predefined set of dialog boxes that appear in a specific order. For more information about the dialog boxes included in each built-in WixUI dialog set, see the WixUI Dialog Library Reference. It is possible to change the default sequence of an integrated dialogue set. To do this, you must copy the contents of the , which contains the definition of the set of dialog boxes that you want to customize in your project from the WiX source code. You must then modify the elements to set the exact order of the dialog box that you want to use in your installation experience. We need to create the new dialog box as a separate fragment: in our example we modify the library WixUI_Mondo and add a new dialog box to collect the registration information (name, organization, serial number) of the user. The new dialog box appears between the License Agreement and Installation Type dialog boxes.
Here is the sample screenshot showing the installation progress dialog box after running the .msi file and performing the installation: Installation Progress dialog box Note: This project is based on WiX v3.11 (GitHub) when I write this article. If you need to customize the installer ui dialog boxes or support multiple locations, you can use this repository on GitHub for more references to source code. All text displayed in built-in WixUI dialog sets can be replaced with custom strings if necessary. To do this, you must add a string to your product`s WiX location file (WXL) that had the same ID value as the string you want to replace. You can find the Id values of the WixUI string by searching for the WixUI_en-us.wxl file in the WiX source code. Under the De-De folder is also the WixUI_de-de.wxl file. This file contains German translations of all texts that are built-in dialog boxes in WiX. It can be downloaded from the WiX 3.0.5419.0 Source Forge website. Download the wix3.zip sources and navigate to srcextUIExtensionwixlib. . .