views:

497

answers:

8

Or is there anything cheaper and better?

I am still using the Installsheild express (Borland Limited Edition) as supplied with Delphi 6 :) but I "feel" that I should update it – am I going to gain much or anything buy buying the 2010 version?

The old version does work on Vista.

I am using Delphi 2009.

Any opinions or a definitive yes/no?

+40  A: 

I like InnoSetup a lot. Combined with ISTool it's quite comfortable too.

fvu
+1 yes, absolutely - excellent tool, written in Delphi itself, great and very useful and absoultely **FREE**, too!
marc_s
+1 - I have used InnoSetup for many years and it has never let me down. Extending it via dll's is simple when you need some extra help, and the script language is pascal based so it feels like home.
skamradt
+1 I replaced Wise with InnoSetup and ISTool a long time ago and have never looked back.
Simon Temlett
Looks like InnoSetup is going to be the clear winner - Thanks. I have downloaded it and started to read :)
Despatcher
The only drawback of innosetup is that it does not support MSI installers. There are customers that insist on that support.
dummzeuch
+3  A: 

You can use any installer you want to to build an installer for a Delphi app. You certainly don't have to stick with InstallShield. My humble opinion is that almost anything else is better. I also like InnoSetup (+1 for fvu) for smaller installs. For supporting group policy installs, though, you'll need something MSI based. So it depends on your needs, but the fact that you're installing a Delphi app doesn't have to affect your decision at all.

Craig Stuntz
+14  A: 

It depends, but it does not depend on the application's language (Delphi, C#, C++, C, etc).

You need to primarily decide if you want to create MSI's, which is Microsoft's official installation format (and the one I prefer), or if you are fine with installations that are executable files (as created by InnoSetup or NSIS)

MSI's offer many very nice features, such as integration with SMS for deployment in organizations, automated installation and removal, on the fly modification using transforms, very strong prerequisite handling, "custom actions" that can be written in VBScript or C++ or Delphi.

See this guide to writing MSI custom actions using Delphi.

I can't speak to the specific features of InnoSetup or NSIS, because I create MSI's. I personally use a recent version of InstallShield, but you can also use the widely supported and actively maintained open-source Windows Installer XML toolkit (known as WIX). In fact, most Visual Studio users prefer WIX because it integrates well with MSBuild....as does Delphi 2007 and newer.

Here's a great WIX tutorial if you are interested in using it to build an MSI installation package for your Delphi application.

However, wrapping your head around MSI's can take some time. It's extremely powerful, but it takes some patience and dedication to learn it well. If you are looking for a quicker way to get moving with your software installation (and aren't familiar with Windows Installer) I'd probably select InnoSetup (used with ISTool).

Mick
Thanks - these are simple installs one EXE plus a few images and a couple initialisation / License files delivered by e-mail or downloaded. I know installers are not language specific but I included Delphi in case there WAS a specific one aimed at Delphi apps.
Despatcher
It's not just about whether _you_ (as a developer) are fine with either MSI/executable, it's mostly about what the customer/user expects. If you deliver business apps to enterprises, their IT department often expects you to deliver an msi, because they can monitor the contents AND they can transform it for company-specific deployment. However, if your users are @home users, an executable will do just fine.
Paul-Jan
@Paul-Jan --- you are absolutely correct. Enterprises want an MSI. If you don't give them one, they will ask for it. If you can't produce one, they will repackage your application into an MSI anyway.
Mick
We use WiX as well. It is good for either large or small installs and can integrate well with automated build processes.Using the heat tool included with it will give you a quick head start on a simple installer.
Ryan VanIderstine
+1  A: 

I use Inno Setup, a great tool. Includes it's own Delphi like scripting language for custom actions but I've never needed to use that feature.

You could also try InstallAware but I think it's expensive.

Iron
> Expensive - Yes it was expense that prompted me to ask the question. I Read the specs for installshield and then was shocked at a price of £1,269.00 + VAT :( and people say Delphi is expensive!
Despatcher
A: 

I recommend DeployMaster from JGSoft. Very easy to use and it has all the features I ever needed. It's not free, but well worth the money. Check it out.

Holgerwa
A: 

I use Tarma Installer 5 from Tarma.com. Inexpensive, Interface-Builder included and multilingual setups possible. For me the perfect solution.

Gerald
A: 

I use 'Setup Factory' from Indigo Rose, which I switched to last year after many years of using Wise InstallMaster 8.

SetupFactory is a bit quirky, but it's certainly powerful and it's nowhere near as expensive as InstallAware and InstallShield etc.

But as Craig and Mick have pointed out, your choice of installer should be development-language independent and really driven by your customers' expectations, the amount of time and effort you are prepared to spend on the install experience, and your financial constraints. :-)

robsoft
A: 

I'm use 'create installer'

Markus