在我的 IT 职业生涯中,我编写了相当多的代码并发布了大量的Windows程序,因此创建Windows安装程序包的好工具始终是关键。每个程序都有一组不同的需求,例如脚本、DLL(DLLs)、安全设置等,因此需要一个可以处理一组复杂需求的工具。
如果您有钱或需要大量支持,您可以随时使用InstallShield ,这是许多使用(InstallShield)Windows的公司的可靠选择。我们在早期一直使用InstallShield ,因为它与(InstallShield)Visual Studio和Visual Foxpro打包在一起。
但是,它并不是唯一用于创建Windows安装程序的好软件。在本文中,我将提及其他一些免费和付费(虽然便宜得多)的实用程序,您可以在您的组织中试用。
Nullsoft 脚本安装系统(Nullsoft Scriptable Install System)( NSIS )
如果您喜欢开源软件,您可能需要查看Nullsoft Scriptable Install System (NSIS)。NSIS是一个专业的系统,您可以使用它来创建从非常简单到非常复杂的Windows安装程序的所有内容。它很小,但具有很大的功能集,因此适合Internet分发。
顾名思义,NSIS是基于脚本的,它允许您创建处理任何情况所需的复杂逻辑。幸运的是,对于初学者来说,它还包括一堆插件和预定义的脚本来帮助你入门。
以下是此MSI软件包创建者的一些我最喜欢的功能的简短列表:
- 能够(Ability)创建可以安装、卸载、设置系统设置、提取文件等的Windows安装程序。(Windows)
- NSIS的开销只有 34KB!与InstallShield(InstallShield)和Wise相比,它是迄今为止最小的Windows安装程序。
- 一款与从Windows 95到Windows 10的所有主要(Windows 10)Windows版本兼容的安装程序。
- 三种压缩方法(ZLib、BZip2、LZMA)可确保对您的安装程序包进行最大程度的压缩。
- 基于脚本(Script)的安装程序比仅生成文件和注册表项列表的其他程序要好。使用脚本语言,您可以执行许多不同的安装任务,例如升级、版本检查、系统重启、修改环境变量、访问Windows API等等。
- 创建(Create)自定义对话框和界面以包括用户输入、配置选项,甚至自定义向导界面。
- 使用可以与安装程序通信的插件扩展NSIS的功能。(NSIS)
- 支持通过Internet进行 Web 安装和文件修补。
该程序支持大量其他功能,包括使用校验和的安装程序自我验证、用于组件选择的列表和树、用于自动安装的静默模式、用于编写脚本的完整代码编辑器等。
高级安装程序
Advanced Installer也有一个免费版本,但它也有几个其他版本,价格会根据您的安装程序需要的复杂程度而上涨。它经常更新并且工作得非常好。
如果您正在寻找更专业的东西,还包括一些支持选项,那么Advanced Installer是一个不错的选择。如果您想了解他们拥有的五个不同版本之间的功能细分(feature breakdown),请查看链接。免费版实际上有很多功能,我们可以在我们公司使用很长时间,因为我们的安装程序相当简单。
Advanced Installer的一项独特功能是Installer Analytics。它基本上是一组工具,用于查看用户如何安装、使用和卸载您的应用程序。您可以轻松查看您的用户群有多大,在用户卸载程序时加载调查,并获取有关用户系统和地理位置的信息。所有这一切都在您可以自己测试(test yourself)的时尚现代 Web 界面上完成。
它还允许您轻松地将应用程序重新打包为通用 Windows 平台(Universal Windows Platform)所需的新AppX格式。它不需要任何代码更改,并且他们有一个免费的AppX转换器工具。这些只是一些独特的功能,但Advanced Installer几乎涵盖了所有基础。在此处查看每个版本的完整功能列表。(full list of features)
创新设置
Inno Setup是一款完全免费的高级Windows安装程序,自 1997 年以来一直存在。它具有大量功能,非常适合具有中等复杂要求的小型企业。
以下是Inno Setup的一些最佳功能列表:
- 支持从Windows 2000到Windows 10的所有(Windows 10)Windows版本(Windows)
- 支持在 64 位 Windows 上安装 64 位应用程序
- 支持创建单个EXE文件,方便文件分发
- 可自定义的设置类型和对应用程序卸载的全面支持
- 创建快捷方式、注册表项和INI文件
- 支持静默安装和Pascal脚本引擎以进行更高级的安装
- (Third)增强Inno设置功能的第三方扩展
总的来说,这是一个非常好的选择,因为它完全免费且非常易于使用。它不能做InstallShield甚至Advanced Installer可以做的事情,但它涵盖了几乎所有的基础知识。
WIX 工具集
WIX 工具集(WIX Toolset)是一套免费的工具,用于创建适用于Visual Studio 2012或更高版本的Windows安装程序。我最后提到它是因为它需要最大的学习曲线。您可以使用它创建一些非常复杂的安装程序,但您将编写大量代码并经常使用命令行。
WIX 工具集(WIX Toolset)基于XML创作模型。如果没有 Visual Studio,可以使用Wix工具或MSBuild。它支持构建MSI、MSP、MSM和MST安装程序文件。它还支持大量Windows Installer功能。
因此,这些是您可以用来创建Windows安装程序的一些知名且稳定的程序。我相信还有很多其他人,所以请随时让我们知道您在评论中使用哪一个。享受!
4 Great Tools to Create Windows Installer Packages
I’ve written a fair amount of code in my IT career and released a good number of Windows programs also, so a good tool to сreаte Windows installer packages was alwaуs keу. Each program wоuld have a different sеt of needs, such as sсripts, DLLs, security settings, etc., so one tool that could handle a complex set of requirements wаs necеssаry.
If you have the money or need tons of support, you can always go with InstallShield, the solid choice for many companies using Windows. We always used InstallShield in our early days as it came packaged 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 mention a couple of other free and paid (though much cheaper) utilities you can try out in your organization.
Nullsoft Scriptable Install System (NSIS)
If you love open source software, you may want to check out the Nullsoft Scriptable Install System (NSIS). NSIS is a professional system that you can use to create everything from very simple to very complex Windows installers. It’s small, yet has a large feature set, which makes it suitable for Internet distribution.
As you can tell by the name, NSIS is script-based, which allows you to create logic as complicated as you need to handle any situation. Luckily, for beginners, it also includes a bunch of plug-ins and pre-defined scripts to get you started.
Here is a short list of some of my favorite features of this MSI package creator:
- 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 that is compatible with all major version of Windows from Windows 95 to Windows 10.
- Three compression methods (ZLib, BZip2, LZMA) to ensure the greatest compression for your installer packages.
- Script based installer is better than other programs that just generate a list of files and registry keys. Using the script language, you can perform many different installation tasks like upgrades, version checks, system reboots, modification of environment variables, access to Windows API and more.
- Create custom dialogs and interfaces to include user input, configuration options, and even a custom wizard interface.
- Extend the capabilities of NSIS with plug-ins that can communicate with the installer.
- Support for web installation and file patching across the Internet.
The program supports a tons of other features including installer self-verification using checksum, list and tree for component selection, silent mode for automated installations, full code editor for writing scripts, etc.
Advanced Installer
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’s updated very often and works extremely well.
If you’re looking for something more professional that also includes some options for support, then Advanced Installer is a good choice. If you want a feature breakdown between the five different versions they have, then check out the link. The free version actually has a lot of features and we were able to use that in our company for a long time because our installers were fairly simple.
One unique feature to Advanced Installer is Installer Analytics. It’s basically a set of tools to see how users install, use and uninstall your applications. You can easily see how large your user base is, load a survey when a user uninstalls the program, and get information about the user’s system and geographic location. All of this on a sleek and modern web interface that you can test yourself.
It also lets you easily repackage your applications into the new AppX format, which is required for the Universal Windows Platform. It doesn’t require any code changes and they have a free AppX converter tool. Those are just some of the unique features, but Advanced Installer pretty much covers all the bases. Check out the full list of features here for each edition.
Inno Setup
Inno Setup is an advanced Windows installer that is completely free and that has been around since 1997. It’s got a ton of features and works 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 up to Windows 10
- Supports installation of 64-bit applications on 64-bit Windows
- Supports the creation of a single EXE file for easy file distribution
- Customizable setup types and full support for application uninstalls
- Creation of shortcuts, registry entries and INI files
- Supports silent installs and Pascal scripting engine for more advanced installs
- Third party extensions that enhance the features of Inno setup
Overall, this is a really good option since it’s completely free and very easy to use. It’s not going to be able to do what InstallShield or even Advanced Installer can do, but it covers pretty much all of the basics.
WIX Toolset
The WIX Toolset is a free set of tools for creating Windows installers that works with Visual Studio 2012 or higher. I mention it last because it requires the biggest learning curve. You can create some very complex installers with it, but you’ll be coding quite a bit and using a command line often.
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 installer files. It also supports a large number of Windows Installer features.
So those are some of the better known and stable programs 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!