Some useful WiX tools and Windows installer notes:
WiXEdit is a decent WiX editor (open source). I used it extensively during the initial UI design, it works for most purposes but don’t expect it to be very intuitive like for example when it comes to Attribute on controls its shows all possible attributes on right clicking the control instead of showing only the applicable ones.
Votive (the visual studio plugin)
You can use Votive to use Visual Studio to build your WiX code.
Remember you won’t be able to see the dialogs in design mode if you are using Votive. Only advantage here would be you could use visual studio’s intellisense for the WiX code after you copy the WiX XSD’s from WiX\doc to the following directory: C:\Program Files\Microsoft Visual Studio 8\Xml\Schemas and ofcourse you could integrate it with your project or as a separate build process
I personally use a batch file to build my WiX project mainly because it’s easier to point to different releases of WiX binaries without having to install Votive each time and also with some custom actions you might want to perform when building your project.
I use this tool for peaking into the msi files, it also lets you edit the .msi or.msm file directly.
To install and run the Orca editor, follow these steps:
Download the Windows Installer SDK samples, tools, and documentation.
Install the Orca editor by double-clicking the Orca.msi file in the \Microsoft SDK\bin folder.
This tool is used to generate WiX fragments by harvesting a directory with WiX2.0
Similar functionality as in Tallow but Heat is optimized for working with WiX 3.0.
Keep in mind that both Heat and Tallow designed to allow a setup author to generate their setup authoring very quickly for the first time after which authoring should be done manually to make sure that guids, identifier names remain the same and component rules aren’t broken
Dark is used to reverse engineer an MSI into a WiX source file
Install your installation package with logging:
Silent Install with selective feature installation and logging: