Friday, February 24, 2012

An end-to-end WiX example...

Ayobami Adewole - Building Installation Packages with Windows Installer XML

"A while ago, I needed to package and deploy an application and I did not want to use Visual Studio Setup and Deployment, I opened my firefox and decided to look for an alternative, what I got is WIX, windows installer xml.

So, I did some background check about WIX and I found out that its the right tool for what I needed to do, because it gives me full control as a developer to determine how my application is going to be installed on the clients' machines and gives full unrestricted access to Windows Installer functionality, but the learning curve associated with it is much and knowledge of xml is a prerequisite.

WIX is a free open source toolset that is used to build Windows installation packages from XML source code, originally it was developed by Microsoft but its now being maintained by Rob Mensching. It is written in C# and WIX itself is much like a programming language, but nothing to worry about, because with the knowledge of xml, the problem is half solved.

Now, dont let me bore you and lets get started, in this post, I am going to use WIX to deploy a c# contact manager application that saves and retreives data from an SQLite database. First of all you need to download the WIX toolset which contains visual studio plugin that install WIX project templates into visual studio, download the binaries here. After installing the toolset, it will install templates like this into visual studio.

...

image..."

WiX has this weird little place in my heart from some reason. Maybe because it was the "new In the box setup solution for Visual studio that wasn't." Maybe because I really dig the idea of a declarative setup solution. Maybe it's because I have less than warm fuzzy feelings for the other packages that hide too much behind a GUI. Maybe I'm just freak...Who knows.

Anyway, been a bit since I've mentioned WiX here and thought this end-to-end post was a great example of it...

No comments: