Tuesday, November 10, 2009

 

Inno Setup

I spent some time today re-acquainting myself with an old friend. Back around the turn of the century, InnoSetup was a little tool by Jordan Russell that created install packages for my custom applications. My development tool of choice at the time was Computer Associates attempt at an OOP-based, windows development platform called Visual Objects. The power and elegance of the language was excellent, and even today with the advent of the .Net development platform, there are still things VO can do better than most.

Never heard of Visual Objects? I'm not surprised.

VO could truly have been a very serious contender against Microsoft's .Net platform. But for every powerful verb, for every gracious class and method, for every sublime implementation of a model, the IDE provided with VO lacked an essential piece of functionality. To say it was incomplete was an understatement. Bug-ridden, cantankerous, reluctant - oh, I could go on! I put up with this jumble of malfunctioning ones and zeroes for almost seven years. Yes, yes, I know. I have the patience of a saint.

Anyway, I digress.

InnoSetup was a brilliant utility that output perfectly working install routines with very little effort. Once I moved to Visual Objects though, I had no need of it. Or so I thought.

Somewhere in the past few weeks I have somehow scrambled Visual Studio's setup project wizard. It runs; it creates Setup.exe and msi files; but they are empty. No Primary Output. No supporting DLLs. Nothing.

So while I was searching the Internet was a solution, I came across a reference to InnoSetup, and my love affair started all over again. There's so much to love about Innosetup. It has an intuitive interface supported by a considerate host of tool tips that never get in the way but provide just enough assistance if you get stuck. There is a wonderful little addition called ISTool, written by Bjornar Henden that improves an already masterful interface.

I love using software that an individual has written that solves a common problem, especially if that software works in a manner that exceeds the performance of products from big publishing houses.

Congratulations Jordan and Bjornar! Well done. Producing tools that remain relevant through multiple generations of improvement in any industry is a feat few can lay claim to.



Labels: , ,


This page is powered by Blogger. Isn't yours?

Subscribe to Posts [Atom]