I’ve written quite a bit of code in my IT career and also released a large number of Windows programs, so having a good tool to create Windows installation packages was always key. Each program would have different needs such as scripts, DLLs, security settings, etc., so one tool was needed that could handle a complex set of requirements.
If you have the money or need a lot of support, you can always go for InstallShield, the solid choice for many businesses using Windows. We used to use InstallShield in our early days because it came with Visual Studio and Visual Foxpro.
However, it is not the only good software out there for creating Windows installers. In this article, I’m going to list some other free and paid (although much cheaper) tools that you can try in your organization.
Nullsoft Scriptable Install System (NSIS)
If you like open source software, you might like the Nullsoft scriptable installer (NSIS)† NSIS is a professional system that allows you to create everything from very simple to very complex Windows installers. It’s small, but it packs a lot of features, making it suitable for internet distribution.
As you can tell from the name, NSIS is script-based, allowing you to create logic as complicated as you need to handle any situation. Fortunately, it also includes a ton of plugins and predefined scripts for beginners to get you started.
Here is a short list of some of my favorite features of this MSI package maker:
- Ability to create Windows installers that can install, uninstall, set system settings, extract files, and more.
- NSIS has an overhead of only 34KB! It is by far the smallest Windows installer compared to InstallShield and Wise.
- One installer compatible with all major versions of Windows, from Windows 95 to Windows 10.
- Three compression methods (ZLib, BZip2, LZMA) to ensure the greatest compression for your installation packages.
- A script-based installer is better than other programs that just generate a list of files and registry keys. Using the scripting language, you can perform many different installation tasks such as upgrades, version checks, system restarts, changing environment variables, accessing Windows API and more.
- Create custom dialog boxes and interfaces with user input, configuration options, and even a custom wizard interface.
- Extend the capabilities of NSIS with plugins that can interact with the installer.
- Support for web installation and file patching over the internet.
The program supports many other features including installer self-verification using checksum, list and tree for component selection, silent mode for automated installations, full code editor for script writing, etc.
Advanced Installer also has a free version, but it also has several other versions that go up in price depending on how complex your installer needs to be. It is updated very often and works extremely well.
If you’re looking for something more professional that also includes some support options, Advanced Installer is a good choice. if you want one job breakdown between the five different versions they have, check out the link. The free version actually has a lot of features and we have been able to use it in our company for a long time because our installers were quite simple.
A unique feature of Advanced Installer is: Installation analyses† It is basically a set of tools to see how users install, use and uninstall your applications. You can easily see the size of your user base, load a survey when a user uninstalls the program, and get information about the system and the user’s geographic location. All this in a sleek and modern web interface that you can test yourself†
You can also easily repackage your applications in the new AppX format, which is required by the universal Windows platform. It requires no code changes and they have a free AppX conversion tool. Those are just some of its unique features, but Advanced Installer pretty much covers all the bases. look at the full list of features here for each edition.
Inno configuration is an advanced Windows installer that is completely free and has been around since 1997. It has a ton of features and works great for small businesses with fairly complex requirements.
Here’s a list of some of Inno Setup’s best features:
- Supports all versions of Windows from Windows 2000 to Windows 10
- Supports installation of 64-bit applications on 64-bit Windows
- Supports creating a single EXE file for easy file distribution
- Customizable setup types and full support for uninstalling applications
- Create shortcuts, registry entries and INI files
- Supports silent installations and Pascal scripting engine for more advanced installations
- Third party extensions that enhance Inno setup features
Overall, this is a really good option as it is completely free and very easy to use. It won’t be able to do what InstallShield or even Advanced Installer can do, but it covers pretty much all the basics.
The WIX toolset is a free set of tools for creating Windows installers that work with Visual Studio 2012 or later. I mention it last because it requires the biggest learning curve. You can create some very complex installers with it, but you’ll do quite a bit of coding and often use a command line.
WIX Toolset is based on the XML authoring model. If you don’t have Visual Studio, you can use the Wix tools or MSBuild. It supports building MSI, MSP, MSM and MST installation files. It also supports many features of Windows Installer.
So these are some of the more well-known and stable programs that you can use to create Windows installers. I’m sure there are many more, so feel free to let us know which ones you use in the comments. Enjoying!