WIX Installer with modern look and feel

后端 未结 2 1192

I am currently creating an installer for my software. I decided to use WIX for it, because I read on stackoverflow that while it has a steep learning curve, it is the most v

相关标签:
2条回答
  • 2020-11-27 07:32

    You get a basic UI with Windows Installer, and that's mainly because it comes from 1998 (pre .NET) and could not assume that anything (.NET, C++) was on the system other than the bare bones of Windows. And obviously it's not been modernized.

    The standard way to do this is to build your own UI using Burn, supplying your own UI to contain the standard data that the install provides as it progresses. If you do a search for "burn ui wix" you'll find examples of how to provide that framework, such as this one:

    https://frozencloud.wordpress.com/2016/05/03/creating-a-custom-ui-installer-with-wix-burn-bootstrapper/

    It gets complicated because you need to deal with all aspects of the UI, including file-in-use dialogs, that browse dialog, and so on. There may be some complete examples somewhere if you search for examples.

    0 讨论(0)
  • 2020-11-27 07:38

    Custom GUI: Maybe I can add to Phil's answer that the WiX installer itself uses such a custom Burn GUI. You obviously have the WiX installer already, but here is a link to the WiX 3 installert for other readers.

    Burn: Just to clarify: Burn is part of WiX - it is a bootstrapper / sequencer / downloader tool designed to help you run several MSI files or setup.exe binaries in sequence. Hence it allows you to also install prerequisites. The fact that it allows an external GUI is just another aspect of its primary function: to install all the setups and components you need - in the right order.

    MsiSetExternalUI: For the record: the underlying feature in Windows Installer itself that allows an external GUI to be used is the function: MsiSetExternalUI? I think Installshield - one of the leading commercial tools for creating Windows setups - provides some more modern GUI features as well - using this external GUI approach, but I don't have a full overview.

    Some Burn samples: There are many samples available on github.com for how to make Burn bundles with WiX. Here is a nice, first sample of what Burn can do: https://github.com/frederiksen/Classic-WiX-Burn-Theme. This shows how you can make a simple Burn GUI that has a more "modern feel".

    There are many other resources available. Here are a few I would recommend:

    • WiX Burn XML Markup Sample - "Hello WiX Burn (on steroids)".
    • WiX Burn Information & Simple Markup Sample
      • "Hello WiX Burn" on top.
      • Lots of links for further information below. See section "Some Burn Sample Links".

    Burn has a standard GUI available - which is more modern than the normal MSI GUI. But you can also implement the whole GUI yourself - as Phil states in his answer. Here are a couple of links on the subject:

    • Write your own WiX Burn setup GUI application (advanced)
    • https://github.com/rstropek/Samples/tree/master/WiXSamples/CustomBurnUI
      • More WiX samples for other aspects of WiX found a level or two higher

    Some Links:

    • Uncommon UI layout for Windows installer for Techsmith Snagit
    • WiX root feature without Treelines
    • msiexec.exe to stdout
    • Wix - Choice of UI based on property
    0 讨论(0)
提交回复
热议问题