In Stock.
Ships from and sold by Gift-wrap available.
WiX: A Developer's Guide ... has been added to your Cart
+ CDN$ 6.49 shipping
Used: Good | Details
Sold by Daily-Deal-
Condition: Used: Good
Comment: This Book is in Good Condition. Used Copy With Light Amount of Wear. 100% Guaranteed.
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

WiX: A Developer's Guide to Windows Installer XML Paperback – Oct 18 2010

See all 5 formats and editions Hide other formats and editions
Amazon Price
New from Used from
Kindle Edition
"Please retry"
"Please retry"
CDN$ 64.62
CDN$ 53.89 CDN$ 42.39

There is a newer edition of this item:

Unlimited FREE Two-Day Shipping for Six Months When You Try Amazon Student
click to open popover

No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your mobile phone number.

Product Details

  • Paperback: 348 pages
  • Publisher: Packt Publishing (Oct. 18 2010)
  • Language: English
  • ISBN-10: 1849513724
  • ISBN-13: 978-1849513722
  • Product Dimensions: 19 x 2 x 23.5 cm
  • Shipping Weight: 748 g
  • Average Customer Review: Be the first to review this item
  • Amazon Bestsellers Rank: #982,372 in Books (See Top 100 in Books)
  •  Would you like to update product info, give feedback on images, or tell us about a lower price?

Product Description

About the Author

Nick Ramirez is a software engineer at Sophos in Columbus, Ohio where he works installing code for the company's enterprise products. As a member of the engineering team, he also spends time coding C#, WPF, and other Windows technologies. He is an active contributor to the WiX discussion forum. Nick lives in Columbus with his soon-to-be wife, Heidi.

Customer Reviews

There are no customer reviews yet on
5 star
4 star
3 star
2 star
1 star

Most Helpful Customer Reviews on (beta) 4.5 out of 5 stars 13 reviews
9 of 9 people found the following review helpful
4.0 out of 5 stars Learn WiX and Windows Installer and integrate setup into your software development lifecycle Dec 9 2010
By Aaron M Stebner - Published on
Format: Paperback
A big pet peeve of mine when I try to help people solve WiX problems is that they tend to try to dive directly into the WiX syntax without understanding what is happening behind the scenes in Windows Installer itself. This book does a great job of teaching not only the specific WiX XML syntax needed to implement a specific setup feature, but also the underlying Windows Installer concepts that are important for a developer to understand in order to use WiX effectively to create a well-behaving installer.

The book leads off with an example of a simple installer that can install a file and create a shortcut, and then introduces more complex concepts like using AppSearch elements, authoring custom actions, creating registry keys and values, setting conditions on components and features, configuring the installation sequence tables, etc. It spends a lot of time explaining details about creating Windows Installer UI in WiX - it starts with the built-in WixUI dialog sets and expands in scope to describe how to create fully customized UI.

Throughout, the book does a nice job of pointing out some of the common pitfalls that can trip up developers as they create installers - things like the importance of being careful about how GUIDs are used, particularly for components, problems that can be caused by using string comparisons in property evaluations, why you should consider setting the Transitive value for components with conditions.

The book covers a key area of the software development lifecycle that is typically forgotten about - how to update your application after it ships. It provides a thorough overview of the process of identifying an appropriate update strategy for various scenarios and implementing the chosen strategy in WiX.

Because it is based on WiX v3.0, the book only describes scenarios that use the Visual Studio 2005 and 2008 IDE. Visual Studio 2010 has been out for about a year now, but it is only supported in WiX v3.5 and later. Hopefully there will be some kind of addendum to this book with additional details about what is new in WiX v3.5 once it ships.

The book omits a few more advanced setup development concepts:

* While it does talk about using the Deployment Tools Foundation to create custom action DLLs, the book doesn't spend a lot of time describing how to use WiX extensions and built-in custom actions. It describes some of the WiX extensions in the context of teaching about related setup authoring concepts (things like creating user accounts, setting file and registry permissions, and detecting the presence of the .NET Framework on the computer). It omits other useful built-in custom actions entirely (in particular, QuietExec, which I find myself using fairly often when I need to run custom actions during an install).

* The book describes how to use WiX tools via the Visual Studio IDE and by running them directly via command line. It does not describe how to implement command line builds using MSBuild and .wixproj files, though this is covered fairly well in the WiX documentation.

* How to create specialized MSIs such as 64-bit MSIs and per-user MSIs that do not require elevation.

* How to create and consume merge modules, particularly the Visual C++ runtime merge modules.

* Chaining - most applications nowadays have dependencies that need to be installed, and the WiX team is working on a chainer for a future release. In the meantime, I think it would serve the audience of this book well to provide some high level options to consider when creating an installer that has to manage the detection and installation of dependencies.

Overall, this book is something I'd highly recommend to a developer who is in the process of learning about setup development and Windows Installer and who wants to build a solid knowledge base to create robust installers and integrate setup development into their end-to-end software development process.

For purposes of full disclosure, I received a promotional copy of this book that I read and evaluated in order to write this review.
12 of 14 people found the following review helpful
2.0 out of 5 stars Kindle Edition Lacks XML Indentation March 20 2012
By David M. Stanwick - Published on
Format: Kindle Edition Verified Purchase
As you probably know by now, WiX installers are developed using XML. Most people who write XML will properly indent nested elements to expose the tree structure of the document. Unfortunately, unlike the print edition, all the indentation has been stripped from the example XML code in the Kindle edition. I'm only on chapter one and am finding that this lack of XML indentation severely impacts the readability and usefulness of this book. I am very disappointed!

I'm probably going to slog through it anyway, and maybe will have more to report later.
2 of 2 people found the following review helpful
5.0 out of 5 stars Excellent introduction to WiX and Windows Installer (MSI) Jan. 26 2011
By A. Davis - Published on
Format: Paperback
If you want to learn WiX, but are not sure whether you need to spend money on this book instead of relying solely on free resources available online, do yourself a favor: buy the book. It will explain the basic concepts of both the Windows Installer technology and WiX development better than other tutorials, wikis, and help guides you may find (at least based on the resources I found by the time of writing this review). Not only does it describe what you need to do to accomplish certain tasks, but it also explains why you need to do this and that. It is definitely not a comprehensive guide, but for its size, it covers a lot of topics.

I have some experience with MSI, InstallShield, and related installer technologies, but my knowledge of MSI internals is very limited (before switching to WiX, I mostly used Visual Studio Installer projects for building installers). I started learning WiX the hard way: reading user guide, tutorials, wiki; and in a couple of weeks I was able to write several installers for internal projects. Nevertheless, I still had very vague idea about the implementation (i.e. what does this property mean, why I need to include this attribute, what do these elements do), so I bought the book (well, my department did pay for it, but if not, I would've paid myself). The book cleared a lot of things for me.

The book covers the fundamentals extremely well. What is a product, package, media? How do they relate? How do you use features, components, files? The book answers these and other questions in more detail than you would find elsewhere. I found the description of major upgrades (e.g. the matrix explaining the effects of scheduling removal of older version at different execution events) particularly helpful. Chapters covering user interfaces (using default wizards, modifying existing dialogs, customizing wizards) are very informational. So is the discussion of localization. Examples illustrate the topics nicely. The book offers sensible recommendations (e.g. avoid per-user setup packages).

A couple of things I found somewhat confusing include description of properties, variables, etc, when it's not clear whether these get resolved during build time or deployment time and issues pertaining to 64-bit vs 32-bit installers (e.g. how system folders get resolved on various combinations of platforms and installers: 32-bit MSI/64-bit OS, etc). I wish the index were more comprehensive; most of the time when I needed to find something, I just flipped the pages.

I agree with points made by other three reviewers, so I won't repeat them. In short, if you're planning to use WiX to write installers, get this book; you will find it quite helpful.
2 of 2 people found the following review helpful
4.0 out of 5 stars Good Read for Beginning and Intermediate Developers Creating a Setup Package Jan. 23 2011
By Peter Marcu - Published on
Format: Paperback
I got a copy of this book to review and found it to be a good read over a few weekends. Overall, I was very happy with how it broke down all the concepts and explained in easy to understand examples how everything fits together. It would have been a very handy resource for me had it been around 6 years ago when I started using WiX. Over the past few years I've been very focused on the patching infrastructure of WiX and was very interested in seeing how this book would present patches and updates. Overall I was happy with the way it was presented. It helps the developer understand the difference between the main update types and helps them make a decision on which to use. For anyone trying to do any more advanced patching or updating the explanations in the book dont go deep enough. They skip over the details of some important advanced features such as seqencing/supercedence, how patch families behave at runtime, how to patch multiple products with a single patch, and delta patching. Patching itself is probably worth its own small book so I dont fault the author for skipping over these things because you can get lost in them. I think that leaves the door open for a sequel called "Advanced WiX" :). Overall, this is a good book that anyone solving problems using WiX and Windows Installer could benefit from.
2 of 2 people found the following review helpful
5.0 out of 5 stars Practical and to the point Dec 1 2010
By Petter Hesselberg - Published on
Format: Paperback
This is a well-written and thorough guide to WiX. You learn how to create an installer (simple or advanced), how to customize the UI, how to handle elevation (the dreaded UAC), how to handle upgrades and much more. Which is all very nice, but more or less what you'd expect from such a book.

But there's more: A prerequisite for using WiX effectively is a fair understanding of how Windows Installer works (and that is not even remotely straight-forward). After reading this book I understand much more about the Windows Installer than I did before -- it is almost beginning to make sense.

If only more software development books were like this one...