Automatic account creation is now enabled. Captcha authentication required for account creation and editing unless you are trusted here.

WiX UI

From WiX Wiki at MindCapers

Jump to: navigation, search

Contents

Using Custom Bitmaps in the UI

  <WixVariable Id="WixUILicenseRtf" Value="your_license.rtf" /> 
  <WixVariable Id="WixUIBannerBmp" Value="your_banner.bmp" /> 
  <WixVariable Id="WixUIDialogBmp" Value="your_dlgbmp.bmp" />

Feature Selection Tree and Dialog Controls

Question
I have a dialog box that follows a feature selection tree dialog. I want certain controls on this dialog enabled or disabled depending on what features the user selected. Maybe I'm dumb, but I can't figure out a way to do this.

ADDLOCAL is set later in the InstallSequence (I believe) so I can't use that. Is there a variable that is set by the feature tree at the moment feature selections change? Or, is there a way I'm not aware of (and too dumb to find in the docs, apparently) to set a variable at the time a feature is selected or unselected? Thanks!

Answer
Take a look at the "Condition Statement Syntax" topic in the MSI SDK. It shows the special characters to test the install state of Features (and Components).

Dialogs

Question
How does Wix determine which control to set as control_first in the dialog table? Is there a way to override this?
Answer
It's the control that is listed first.
Question
Is there any way that I can validate that an edit control is not empty?
Answer
That should be possible. In the "Next" button processing, use <Publish> to test the value and cause the next dialog box to be launched to be an error message, and the dialog box after the error message goes back to the data-entry dialog box. You can use the properties tied to the controls in Condition elements for the Next button or use them to publish a SpawnDialog event that shows an error dialog.

Property Names

Try using an all-uppercase directory id. It's a requirement to pass the selection you make in the UI to the execute sequence. Uppercase property names indicate that the property is public. For more information, see this MSDN article.

Personal tools