4

I've been playing around WiX lately, and I have found that WiXUI wizard is not flicker-free. When you click "Next" to advance to the next step in the wizard, the wizard window is actually destroyed and then a new window is created with the next step. This does not allow for clean transition between "wizard pages". I come from Inno Setup, where this is perfect, no flickering or window recreation at all.

  1. Is it possible to achieve flicker-free wizard steps transition in WiX, and how?

  2. Is it possible to create my own wizard GUI (in C++ or Delphi), which would WiX use instead of the WiXUI?

Paya
  • 5,124
  • 4
  • 45
  • 71

1 Answers1

2

That's how MSI handles the NewDialog control event. If you want complete control over UI, you need an external UI handler, like Burn in WiX v3.6.

Bob Arnson
  • 21,377
  • 2
  • 40
  • 47
  • Shouldn't it be "That's how WiXUI handles NewDialog...", or am I missing something? I don't really know WiX, but I expect WiXUI to be the one responsible for this behavior. Please correct me if I'm wrong. – Paya Jun 22 '11 at 19:24
  • 1
    WixUI is a set of dialogs implemented with MSI UI support. MSI is what creates and shows the dialogs. – Bob Arnson Jun 22 '11 at 19:32
  • So what I want is possible only with a bootstrapper (is that what you mean by external UI handler?), and not in pure .msi? – Paya Jun 22 '11 at 22:46
  • 1
    If you require that wizards be implemented without destroying and creating pages, then no, you can't get what you want with MSI UI. Burn is both a chainer and an external UI handler, so you can do whatever UI you want with it. – Bob Arnson Jun 22 '11 at 23:29
  • Are there any disadvantages when using Burn, compared to when you use pure MSI? I suppose using Burn will require your setup to have .exe extension, right? Like if there would be any complications when deploying the application on Active Directory, etc... – Paya Jun 23 '11 at 10:56
  • AD/GPO deployment can use the .exe but you can also simply let admins extract the .msi, since UI doesn't matter for those deployments. You can also look at embedded external UI handlers; see http://blogs.msdn.com/b/windows_installer_team/archive/2008/04/01/windows-installer-4-5-ui-enhancements-embedded-ui.aspx. – Bob Arnson Jun 23 '11 at 13:45