Windows Installer
Unrestricted access to Windows Installer functionality!
Open Source
Open source!


Plain XML based source scripts!
Free, no strings attached!
Build Automation
Command-line interface for automated application build process!
Thriving community support!
Why WiX?
What are fragments?

What are fragments?

A fragment is a way of breaking up a large WiX source file into smaller pieces. Fragments are stored as .wxs files and are defined by the Fragment element. In the main source file, a FragmentRef tag is used to incorporate the fragment into the whole.

Custom Installation UI dialogs as well as components of a large software product can be defined in fragments.

The advantage of using a fragment is that it enables reuse of static code common to several different products. Fragments are also useful when working in a software development team because each developer can work on one or more fragments that can later be combined into a complete source file. Hence, fragments allow breaking a complex installer package/project into more manageable pieces/components by distributing the packaging responsibility to the application developers.

The Fragment element in WiX XML code is the building block of creating an installer database. Once defined, the Fragment becomes an immutable, atomic unit which can either be completely included or excluded from a product. The contents of a Fragment element can be linked into a product by utilizing one of the many *Ref elements. When linking in a Fragment, it will be necessary to link in all of its individual units. For instance, if a given Fragment contains two Component elements, you must link both under features using ComponentRef for each linked Component. Otherwise, you will get a linker warning and have a floating Component that does not appear under any Feature.