I’ve written quite a lot of code and released a lot of Windows programs in my IT career, so a good Windows Installer package tool has always been key. Each program will have its own set of requirements such as scripts, DLLs, security settings, and so on, so one tool was needed to deal with the complex set of requirements.
If you have the money or need extensive support, you can always use InstallShield, the trusted choice for many companies using Windows. In the early days, we always used InstallShield as it came bundled with Visual Studio and Visual Foxpro.
However, this is not the only good software for creating Windows installers. In this article, I’m going to mention a couple of other free and paid (albeit much cheaper) utilities that you can try in your organization.
Nullsoft Scriptable Installation System (NSIS)
If you like open source software, you can try Nullsoft Scriptable Install System (NSIS). NSIS is a professional system that can be used to create everything from very simple to very complex Windows installers. It is small, but has a large set of functions, which makes it suitable for distribution over the Internet.
As the name suggests, NSIS is script-based, allowing you to create as complex logic as you need to handle any situation. Fortunately for beginners, it also includes many plugins and pre-defined scripts to get you started.
Here’s a short list of some of my favorite features of this MSI package creator:
- The ability to create Windows installers that can install, uninstall, set system preferences, extract files, and more.
- NSIS overhead is 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 maximize the compression of your installer packages.
- The script-based installer is better than other programs that simply create a list of files and registry keys. Using a scripting language, you can perform many different installation tasks such as updates, version checks, system reboots, changing environment variables, accessing the Windows API, and more.
- Create custom dialog boxes and interfaces to enable user input, configuration options, and even a custom wizard interface.
- Extend NSIS capabilities with plugins that can interact with the installer.
- Supports web installation and Internet file patching.
The program supports many other features, including installer self-checking using checksum, list and tree to select components, silent mode for unattended installation, full code editor for scripting, etc.
Advanced Installer has a free version as well, 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 great.
If you’re looking for something a little more professional that also includes some support options, then Advanced Installer is a good choice. If you need a breakdown of features between the five different versions they have, check out the link. The free version actually has a lot of features, and we could have used them in our company for a long time because our installers were pretty simple.
A unique feature of Advanced Installer is Installer Analytics. Basically, it’s a set of tools to see how users install, use and uninstall your applications. You can easily see how big your user base is, download the survey when the user uninstall the program, and get information about the user’s system and geographic location. And all this in an elegant and modern web interface that you can check for yourself.
It also makes it easy to repackage your apps into the new AppX format required by the Universal Windows Platform. It doesn’t require any code change and they have a free AppX conversion tool. These are just a few of the unique features, but Advanced Installer pretty much covers all the basics. Check out the complete feature list for each release.
Inno Setup is an advanced Windows installer that is completely free and has been around since 1997. It is packed with features and is great for small businesses with moderately complex requirements.
Here is a list of some of the best features of Inno Setup:
- Supports all versions of Windows from Windows 2000 to Windows 10
- Supports installing 64-bit applications on 64-bit Windows
- Supports the creation of a single EXE file for easy file distribution.
- Customizable installation types and full support for uninstalling applications.
- Create shortcuts, registry entries and INI files.
- Supports unattended installation and Pascal scripting engine for more complex installations.
- Third-party extensions to improve the Inno installation experience.
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 this last because it takes the most training. You can create some very complex installers with it, but you have to write a little code and use the command line a lot.
The WIX Toolset is based on the XML development model. If you don’t have Visual Studio, you can use Wix or MSBuild tools. It supports creating MSI, MSP, MSM and MST installer files. It also supports a wide variety of Windows Installer features.
So, these are some of the most well-known and stable programs that you can use to create Windows installers. I’m sure there are many others out there, so feel free to let us know which one you use in the comments. Enjoy!