Software:WiX

From HandWiki
Short description: Toolset
WiX Toolset
WiX logo (2016, black).svg
Original author(s)Rob Mensching, Microsoft
Developer(s).NET Foundation
Initial release5 April 2004; 20 years ago (2004-04-05)[1]
Stable release
4.0.0 / 5 April 2023; 15 months ago (2023-04-05)
Repositorygithub.com/wixtoolset
Written inC++, C#
Operating systemWindows
TypeSoftware development tools
LicenseMicrosoft Reciprocal License
Websitewixtoolset.org

Windows Installer XML Toolset (WiX, pronounced "wicks") is a free software toolset that builds Windows Installer packages from XML. It consists of a command-line environment that developers may integrate into their build processes to build MSI and MSM packages. WiX was the first Microsoft project to be released under an open-source license,[2] the Common Public License.[3] It was also the first Microsoft project to be hosted on an external website.

After its release in 2004, Microsoft has used WiX to package Office 2007, SQL Server 2005, Visual Studio 2005/2008, and other products.[4]

WiX 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 .wixproj to Visual Studio.

Tools

Tool Description
Candle Candle compiles the XML documents to .wixobj object files that contain symbols and references to symbols.[5]
Light Light takes one or more object files and links the references in the object files to the appropriate symbols in other object files. Light is responsible for collecting all of the binaries, packaging them appropriately, and generating the final MSI or MSM file.[6]
Lit Lit combines multiple object files into a library for convenience.[7]
Dark Dark takes existing MSI and MSM files and generates XML documents that represent the package.[8]
Heat Heat creates WiX file list code from a file, directory, Visual Studio project, website, VB6 COM component, performance counter category, or Registry file.[9] It produces a .wxs file that can be compiled and linked with other .wxs files. WiX 3.0's Heat replaced WiX 2.0's more limited Tallow tool.[10]

There is also a third-party tool called Paraffin, available under the Common Public License, which offers several features not present in Heat. In particular, Paraffin can keep the GUIDs assigned to each file the same even when the tool is run multiple times. Paraffin can also exclude files by extension or regular expression.[11]

Pyro Pyro creates Patch files (msp) without the Windows Installer SDK.[8]
Burn Burn is a prerequisite bootstrapper and installer chainer tool, was first released in version 3.6.[12] Features include small size, proper elevation support for Windows Vista and Windows 7, a very customizable UI and progress indicators, and automatic download of required dependencies. The old Burn source code was abandoned in July 2009 and reimplemented based on NETFX4 bootstrapper.[13]

History

WiX was the first Microsoft project to be released under an open-source license,[2] the Common Public License.[3] Initially hosted on SourceForge,[1] it was also the first Microsoft project to be hosted externally.

Rob Mensching, the original author and lead developer of WiX, works on WiX in his spare time. When he released the first version of WiX on April 5, 2004, he commented, "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."[1] As of 2006, several other Microsoft employees from various product divisions of the company worked on WiX with Mensching, meeting after business hours once a week to coordinate development efforts and write code.[citation needed]

On June 6, 2010, WiX moved from SourceForge to CodePlex.[14] On August 14, 2012, Microsoft transferred the WiX copyright to the Microsoft-sponsored Outercurve Foundation. At the same time, the license was changed from the Common Public License to the Microsoft Reciprocal License.[2] On May 4, 2016, WiX was transferred to the .NET Foundation.[15]

Since Visual Studio 2012, the traditional setup project type has been removed from Visual Studio (available only as an extension since Visual Studio 2013). WiX is a recommended alternative.[16]

Version history

WiX Releases
Version Release Date Note
1.0 April 5, 2004 First release
2.0 2007
3.0 July 4, 2009
3.5 January 31, 2011
3.6 September 3, 2012 Focus on Burn
3.7 December 24, 2012 Support for Visual Studio 2008, 2010 and 2012
3.8 November 28, 2013 Visual Studio 2013 support
3.9 October 31, 2014
3.10 September 3, 2015
3.11 May 5, 2017
3.11.1 December 31, 2017
3.11.2 September 18, 2019
4.0 April 2023 [17]
4.0.1 June 2023 [18]
4.0.2 September 2023 [19]

See also

References

  1. 1.0 1.1 1.2 Mensching, Rob (5 April 2004). "Windows Installer XML (WiX) toolset has released as Open Source on SourceForge.net". RobMensching.com /Blog. http://robmensching.com/blog/posts/2004/4/5/windows-installer-xml-wix-toolset-has-released-as-open-source-on-sourceforge.net. 
  2. 2.0 2.1 2.2 Mensching, Rob (14 August 2012). "Outercurve Foundation and WiX toolset together, at last". RobMensching.com /Blog. http://robmensching.com/blog/posts/2012/8/14/outercurve-foundation-and-wix-toolset-together-at-last. 
  3. 3.0 3.1 Mensching, Rob (20 August 2012). "The WiX toolset license". http://robmensching.com/blog/posts/2012/8/20/the-wix-toolset-license. 
  4. Robbins, John (18 October 2007). "WiX: Hints for New Users (Part 1 of 3)". Wintellect. http://www.wintellect.com/blogs/jrobbins/wix-hints-for-new-users-part-1-of-3. 
  5. "Compiler". WiX Toolset. http://wixtoolset.org/documentation/manual/v3/overview/candle.html. 
  6. "Linker (light)". WiX Toolset. http://wixtoolset.org/documentation/manual/v3/overview/light.html. 
  7. "Library Tool (lit)". http://wixtoolset.org/documentation/manual/v3/. 
  8. 8.0 8.1 "List of Tools". WiX Toolset. http://wixtoolset.org/documentation/manual/v3/overview/alltools.html. 
  9. "Harvest Tool (Heat)". WiX Toolset. http://wixtoolset.org/documentation/manual/v3/overview/heat.html. 
  10. Halvorson, Loren (29 July 2004). "New "tallow" tool included in latest WiX". Loren Halvorson's Blog. http://weblogs.asp.net/lorenh/archive/2004/07/29/201336.aspx. 
  11. Robbins, John (14 November 2012). "Wintellect/Paraffin". GitHub. https://github.com/Wintellect/Paraffin. 
  12. Mensching, Rob (3 September 2012). "WiX v3.6 released". RobMensching.com /Blog. http://robmensching.com/blog/posts/2012/9/3/wix-v3.6-released. 
  13. Mensching, Rob (15 January 2010). "Burn moves to a new foundation". RobMensching.com /Blog. http://robmensching.com/blog/posts/2010/1/15/burn-moves-to-a-new-foundation. 
  14. Mensching, Rob (6 June 2010). "WiX toolset source and releases move to CodePlex". RobMensching.com /Blog. http://robmensching.com/blog/posts/2010/6/6/wix-toolset-source-and-releases-move-to-codeplex. 
  15. Mensching, Rob (4 May 2016). "WiX toolset joins the .NET Foundation". http://robmensching.com/blog/posts/2016/5/4/wix-toolset-joins-the-.net-foundation/. 
  16. Hodges, Buck (17 March 2011). "Visual Studio setup projects (vdproj) will not ship with future versions of VS". https://devblogs.microsoft.com/buckh/visual-studio-setup-projects-vdproj-will-not-ship-with-future-versions-of-vs/. 
  17. "WiX v4 RC4 and next HeatWave Preview Available". https://www.firegiant.com/blog/2023/3/17/wix-v4-rc4-and-next-heatwave-preview-available/. 
  18. "WiX v4.0.1 Released". https://www.firegiant.com/blog/2023/6/5/wix-v4.0.1-released/. 
  19. "WiX v4.0.2 Released". https://www.firegiant.com/blog/2023/9/13/wix-v4.0.2-released/. 

External links