WiX

From Wikipedia, the free encyclopedia

Jump to: navigation, search
Windows Installer XML toolset
Design by Rob Mensching
Developed by Microsoft
Latest release 2.0.5805 / October 5, 2007
Preview release 3.0.3725 / January 25, 2008
Written in C++, C#
Operating system Windows
Type Software development tools
License Common Public License
Website http://wix.sourceforge.net/

The Windows Installer XML toolset (WiX, pronounced "wicks"), is a free software toolset that builds Windows Installer (MSI) packages from an XML document. It supports a command-line environment that developers may integrate into their build processes to build MSI and MSM setup packages. This is the first software released by Microsoft under an open-source license called Common Public License.

It also includes Votive, a Visual Studio add-in that allows creating and building WiX setup projects using the Visual Studio IDE. Votive supports syntax highlighting and IntelliSense for .WXS source files and adds a WiX setup project type to Visual Studio.

Contents

[edit] Internal structure

WiX is composed of several components, whose names derive from a play on words on the "wick(s)" of a candle.

[edit] Candle

Candle, the compiler, is used to compile the XML documents to object files that contain symbols and references to symbols.

[edit] Light

Light, the linker, takes one or more object files and links the references in the object files to the appropriate symbols in other object files. Light is also responsible for collecting all of the binaries, packaging them appropriately, and generating the final MSI or MSM file.

[edit] Lit

Lit, the library tool, is an optional tool that can be used to combine multiple object files into libraries that can be parsed by Light.

[edit] Dark

Dark, the decompiler, takes existing MSI and MSM files and generates XML documents that represents the package.

[edit] Tallow/Heat

Tallow is a tool for generating WiX filelist code by traversing directory trees. It produces a WiX "fragment" which can be incorporated with other WiX source files at compile time. It will be rendered in WiX 3.0 by a more general "harvesting" tool known as Heat. There is also an unofficial version of Tallow known as Mallow[1], which adds synchronization capabilities and improved component id generation.

There is also a new tool called Paraffin,[2] which provides support for initial creation of a fragment and synchronization.

[edit] History

On April 5, 2004, WiX was the first Microsoft project to be released under an externally created Open Source license, the Common Public License. It was also the first Microsoft Shared Source project to be hosted externally (on SourceForge).

Rob Mensching, the original author and lead developer of WiX, works on WiX in his spare time. At the time of release he said, "I did not feel that many people inside Microsoft understood what the Open Source community was really about and I wanted to improve that understanding by providing an example."

As of 2006, several other Microsoft employees from various product divisions of the company work on WiX with Mensching, meeting after business hours once a week to coordinate development efforts and write code. WiX has proven to be so popular with Microsoft development teams that many of Microsoft's software products, like SQL Server 2005 and Office 2007, are packaged using WiX.

As of 2007, WiX version 2.0 is considered stable and production quality, and is no longer being developed. WiX version 3.0 is under development.

[edit] See also

[edit] Notes

[edit] References

[edit] External links

Personal tools