Which is better? Has anyone used both?
I would welcome any advice as we are trying to decide which one (or any other installer options) to purchase.
Which is better? Has anyone used both?
I would welcome any advice as we are trying to decide which one (or any other installer options) to purchase.
From what I can see InstallShield is price prohibitive for my company.
InstallAware has floating licenses. That means we can buy 5 licenses for $14,500 and our team of twenty can use them (we don't make installers that often).
InstallShield would cost $40,000 to get all 20 people a license (or we would have to designate install builders (which is not so fun a job that any one wants it full time).
A price difference of $25K will be enough to make my managers toss out InstallShield. (Plus InstallAware seems to do most install tasks (ie setup IIS, make msi)).
I've been an InstallShield developer for 14 years and I love it. I now run a team of 4 installation developers who support about 2 dozen dev leads and over 250 developers.
There is a misconception out there that it isn't "real" development but I assure you it is and should be treated as a first class development activity if you want to have successful deployments. If you throw a bunch of developers at a install project part time with little to no training you simply have a recipe for disaster.
Conversely having 1 person be solely responsible can be a recipe for disaster on extremly large projects since it's not possible for that person to have the domain knowledge to understand all the needs of the system and developers make poor design choices because they don't have a vested interest in making sure their code is deployment friendly.
My advice, but 1-2 copies of InstallShield and get a senior developer ( NOT A FRESH OUT ) trained on how to use it properly. Charge him with the responsibility to provide coordinate integration activities with the devloper. If your project is large enough he can eventually get to a point where parts of the installer is decentralized via merge modules (WiX can help here) and delegated back to development leads. He must still retain ultimate responsibility though to make sure it doesn't die a death of a thousand cuts.
You may also want to consider bringing on a consultant as part of the ramp up to set the technical direction of the solution.
I've used the others but have to recommend the OpenSource WiX toolkit. Since the majority of installers went to MSI technologies those commercial tools don't seem to add much true value; except perhaps in terms of custom GUI design. WiX is widely used, feature rich and well supported.
Over the course of the past year we converted all of our internal and external installers to WiX and it has gone quite well and saved quite a bit of money on license fees.
As I've understood it, MSI installers don't natively support run-time language selection - you have to use a bootstrap for that. I don't know how much more complex that is, but that might be enough reason for you to go for a non-MSI technology - so that leaves Inno Setup and NSIS as the big players.
Of those, I believe NSIS is the most flexible, but it can also have a bit of a learning curve, and you have to expect that if you want anything more than license page, directory selection, feature selection and uninstallation, it has to be coded separately (of course, it's not uncommon that people will already have had the same needs as you, and the code is usually available on the website).
If you need more than 2-4GB of raw, uncompressed data, you have to store the data externally and copy it into place, or have separate archives which you then extract. NSIS currently isn't built to support single-file installers with that much data.
I still use NSIS myself, because once you get into it, it's really very simple to work with, and perfect if all you need is a very simple installer. If you want some of the more advanced stuff that you can get with an MSI, like repairing an installation, that's going to take a little more work, but in many cases, there'll already exists a plug-in or set of macros or whatever which you can use.
If you do go with NSIS, however, I would recommend that you take the Unicode version. This will allow you to test all of the installer languages regardless of the computer language. No, it's not the official build, but as far as I can tell from the SVN repository, they are right in the middle of integrating the Unicode changes to the main installer - at the current time of writing, the last commit was 9 hours ago, so I don't think it'll be that much longer before it's official.
We need to move all our installation projects from Wise (since it is dead). InstallAware has option to convert Wise projects. InstallShield is not. IstallAware has updatable plugins and more flexible scripting. InstallAware has interactive flash billboards, built-in SQL Server Express and Virtual Machine detection. I did not find those feauters in InstallShield. Also IA give 33% discount to those who migrate from Wise which makes it twice less expensive than InstallShield. I spend a few days evaluating both products and without a doubt chose InstallAware Studio 9. Besides learning InstallAware was quite easier than InstallShield.
I haven't had to create an install program in more than 4 years, but when I did, I really loved Inno Setup It's free and easy to use(I was a beginner programmer and I figured out how to use quickly). I'm not even sure if it's still maintained though, so of course take with a grain of salt.
I compared Installaware and Installshield over a year ago and at that point in time Installaware seemed to be more flexible than Installshield. Wix was excluded as a possibility due to lack of tooling at this time. We went for Installaware because of the MSI code editor and perceived lack of development in Installshield.
Over a year later and I´d say that while you can do a lot with Installaware when you have more complex requirements then you have to workaround the tool rather than it working for you. I think we would have spent less time doing the wix scripts and would have had a better solution.
Also it seems to have some problems with relative paths so for example checking out from a tag and building on our ci server does not work as a result.
Please also read http://installawareabuse.com/ and do some google about related issue before you made a decision
The installawareabuse site is engaged in fraud, slander and libel - that it has no basis in fact is easily proven (ex: search for InstallAware on ComponentSource).
I think you need to decide whether or not you need to use Windows Installer, that will filter out the possible choices to a smaller list. If you want your application to be certified by Microsoft, the installer for your application needs to be Windows Installer based. If you don't need that, I would consider Inno Setup or NSIS. They are both mature development tools and are free. For Windows Installer based setups, the big three appear to be InstallShield, InstallAware, and WIX.
I migrated from Wise Installation System to InstallAware a couple of years back. I evaluated InstallShield, but InstallAware handled IIS better. In all fairness to InstallShield, I'm sure it would have worked, but I was able to get up and running with InstallAware with a lot less time. While InstallAware has some quirks, I'm very satisfied with the quality of the installers that I am building with it. I could never make that statement with Wise. It was also easy to include InstallAware in our automate build process, that was a factor in the decision to switch to InstallAware.
I have used WIX for a small test project and it worked very well. There is a learning curve with WIX, but it's a powerful tool. Had WIX been in it's current form when I stopped using Wise, I would have seriously considered migrating to WIX.
I would recommend check the support forums for any installer authoring tool. You'll be able to make a more informed decision when you see what issues the other users are encountering and how the vendor responds to those issues.