Inno Setup

Inno Setup is a free software script-driven installation system created in Delphi by Jordan Russell. The first version was released in 1997.

History
Since Jordan Russell wasn't satisfied with InstallShield Express which he had received upon purchase of Borland Delphi, he decided to make his own installer. The first public version was 1.09.

To make an installation package with version 1.09, an "ISS.TXT" file needed to be created in the installation directory. In the file, the user needed to supply variables and values which are still used in Inno Setup today. These variables served as the configuration of the installation package but many other features could not be changed. The installation compiler had no editor and was more of a shell to compile scripts.

Inno Setup grew popular due to being free for both commercial and non-commercial use, many software companies switched to the tool. Since Inno Setup was based around scripting, fans of Inno Setup started ISTool and ScriptMaker to aid in visual and simpler ways to make installations for Inno Setup.

Inno Setup has won many awards including the Shareware Industry Awards three times in a row — from 2002 to 2004.

Many people have taken Inno Setup source code and used it to develop third-party versions of Inno Setup. An example is My Inno Setup Extensions by Martijn Laan, which was incorporated into Inno Setup in June 2003.

Key features

 * Support for multiple platforms (IA-32, x64 and IA-64) in a single binary. ARM64 is also supported.
 * Supports creation of a single EXE to install programs for easy online distribution (MSI support requires third-party products)
 * Supports disk spanning
 * Customizable setup types, for example, "full", "minimal", and "custom"
 * Complete uninstall capabilities
 * Supports Windows Vista and later. Earlier versions supported Windows 2000, Windows XP and Windows Server 2003 (OS requirements change), Windows 9x and Windows NT 4.0 (before 5.5.0), Windows NT 3.51 (before v3.0.0) and Windows 3.X (Before v1.3.0).
 * Integrated support for DEFLATE, bzip2, and LZMA file compression
 * Support for comparing file version information, replacing in-use files, shared file counting, registering DLL/OCXs and type libraries, and installing fonts
 * Creation of shortcuts, including in the Start Menu and on the desktop
 * Creation of registry and INI file entries
 * Integrated scripting engine based on Pascal Script
 * Support for multilingual installs
 * Support for passworded and encrypted installs
 * Silent install and uninstall
 * Supports Unicode and right-to-left languages