With the new release of the Web-Developer Server Suite version 1.90, having not touched the older installer codebase for some time, I decided to take a look at the Authoring [Installer] tools available for Windows.
At first I wanted to go the route of creating an msi package, as it seemed to be the most professional solution with the most advanced feature set.
An MSI package is part of a native Microsoft solution that uses the Windows Installer engine/framework…
The Windows Installer is an engine for the installation, maintenance, and removal of software on modern Microsoft Windows systems. The installation information, and often the files themselves, are packaged in installation packages, loosely relational databases structured as OLE Structured Storage Files and commonly known as “MSI files”, from their default file extension.
The tools I found for creating msi packages consisted of the following two major players, both providing large and expensive packages…
- Wise for Windows Installer
These tools are sold under three main categories/versions: standard/express, professional, and premier/enterprise. Most of the features are not under the standard/express versions. So expect to pay several thousand for the product.
Here is the breakdown that I have been able to gather from the opinion of others…
InstallShield is more flexible/powerful [a euphemism for "the user will need to hack everything together himself"], bloated, buggy, and slow. Wise is easer to use.
I looked at some of the free solutions out there, and found most to be to be lacking in many ways.
The only msi authoring tool that caught my attention was Advanced Installer, a 7MB download with a free version available.
And for creating an extremely simple msi [no components/features, just the basics], you can’t beat the simplicity and cost of this free version of the product. For anything else, expect to pay…
Unless you have the time and effort to learn to use the WiX toolset…
The Windows Installer XML (WiX) is a toolset that builds Windows installation packages from XML source code.
WiX exposes everything under the Windows Installer engine for you to use, every bit of it, just as a hex editor would expose the bits under a binary. There is a noteworthy GUI for this tool called WiXEdit and there is also Microsoft’s Orca, but now we are still only at the ASM level.
Letting go of the msi hope, for anything but the simplest of projects, I was forced back to use an exe Installer. Inno Setup or NSIS (Nullsoft Scriptable Install System). Both free, both major projects that have been around for a while and have strong user bases.
Inno is extremely easy to learn/use, while NSIS is considered by some to be the more “powerful” of the two. Though after getting into some of the more advanced features of Inno, I can’t help but think that those same NSIS users probably never tried Inno in the first place [or just gave it a glance over].
At the end, Inno Setup got the job done.
My new motto is use the tools that will accomplish the most work for the least amount of effort. And learn to live with the few “potential” restrictions.