A great collection of talented and creative talks on various subjects that not many might know about…
November 27, 2006. Released v1.91.
This release is a quick fix update on v1.90. Changes are listed under changelog.txt.
From now on I will be posting new releases on the blog as the News Forum is hardly read by anyone.
Having spent a considerable amount of time programming in C with the win32 API recently, I have been keeping a note in the back of my mind of finding a scripting language to learn; anything to be able to be more productive in with less effort.
When somebody says “scripting language”, people probably tend to either think Perl or PHP…
With Perl, I have always been put down by it’s “many ways to do a task” ideology and the write-only code it produces. And with scripting languages such as PHP: they tend to be either too web-centric, and/or have grown too big for my taste. A good, general purpose scripting language just seems hard to come by these days.
I need a toolset with tools that are specific in function, easy to learn/use; and not a bloated hack with everything and the kitchen sink thrown in. But rather something that is concrete [as in not loose], something that will do the job it was designed for, and something that is established and has matured in a good way.
And here comes Python out of the blue. A good article about ESR trying this language and finding it easier to learn, use, and to be more productive in over Perl…
Dive Into Python is an online book that has come highly recommended.
Byte of Python is another online book [in the form of a wiki] that gets to the point.
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.