Inno Setup is a free installer for Windows programs. First introduced in 1997, Inno Setup today rivals and even surpasses many commercial installers in feature set and stability. Features include a wizard interface, creation of a single EXE for easy online distribution, support for disk spanning, full uninstall capabilities, customizable setup types, integrated file compression, support for installing shared files and OCX’s, and creation of Start Menu icons, INI entries, and registry entries.
Inno Setup places no arbitrary limits on how many files, shortcuts, registry entries, etc. that you may include in an installation. However, keep in mind that Setup does need memory for each entry in a script.
For example, roughly 120 bytes of memory is needed for each [Files] entry.
A typical Inno Setup installation running on Windows 2000/XP/2003/2008/Vista/W7/2012/W8/W10 does not require administrative or “power user” privileges.
Inno Setup Key features:
- Support for all versions of Windows in use today: Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Vista, Windows Server 2008, Windows XP, Windows Server 2003, and Windows 2000. (No service packs are required.)
- Extensive support for installation of 64-bit applications on the 64-bit editions of Windows. Both the x64 and Itanium architectures are supported. (On the Itanium architecture, Service Pack 1 or later is required on Windows Server 2003 to install in 64-bit mode.)
- Supports creation of a single EXE to install your program for easy online distribution. Disk spanning is also supported.
- Standard Windows 2000/XP-style wizard interface.
- Customizable setup types, e.g. Full, Minimal, Custom.
- Complete uninstall capabilities.
- Installation of files: Includes integrated support for “deflate”, bzip2, and 7-Zip LZMA file compression. The installer has the ability to compare file version info, replace in-use files, use shared file counting, register DLL/OCX’s and type libraries, and install fonts.
- Creation of shortcuts anywhere, including in the Start Menu and on the desktop.
- Creation of registry and .INI entries.
- Running other programs before, during or after install.
- Support for multilingual installs, including right-to-left language support.
- Support for passworded and encrypted installs.
- Support for digitally signed installs and uninstalls.
- Silent install and uninstall.
- Unicode installs. (Windows 2000/XP or later)
- Integrated Pascal scripting engine option for advanced run-time install and uninstall customization.
- Full source code is available (Borland Delphi 2.0-5.0 and 2009).
The Inno Setup QuickStart Pack includes Inno Setup itself and additionally includes options to install third-party add-ons such as the ISTool script editor and Inno Setup Preprocessor. These add-ons are not official and are not required for general usage, but make Inno Setup easier to use.
Changes in Inno Setup 5.5.9 (2016):
- To further help protect installers against potential DLL preloading attacks, Setup/Uninstall now calls SetDefaultDllDirectories if available to remove the application directory from the DLL search order. If SetDefaultDllDirectories is not available or cannot be called, it now additionally preloads a set of system DLLs known to be loaded unsafely by older or unpatched versions of Windows.
- Change in default behavior: the OutputBaseFileName [Setup] section directive now defaults to mysetup instead of setup. Setting it back to setup is not recommended: all executables named “setup.exe” are shimmed by Windows application compatibility to load additional DLLs, such as version.dll. These DLLs are loaded unsafely by Windows and can be hijacked. If you do so anyway, the compiler will issue a warning.
- Added new [Files] section flags: sign and signonce. Instructs the compiler to digitally sign the original source files before storing them. Ignored if [Setup] section directive SignTool is not set. Inno Setup’s own compiler files are now also signed.
- [Setup] section directive LZMADictionarySize now allows the LZMA dictionary size to be increased up to 1 GB from the previous maximum of 256 MB. Review the memory requirements listed in the Compression topic before using!
- Improved the “auto-retry” feature of the [Files] section: it now also retries if MoveFile failed even if the preceding DeleteFile succeeded. Additionally, if MoveFile keeps failing it will now register the file to be replaced on restart if the restartreplace [Files] section flag is used instead of displaying an error message.
- The value of the AppVersion directive is now not only used to set the MajorVersion and MinorVersion values in the Uninstall registry key when possible but also used to set the VersionMajor and VersionMinor values as required by newer versions of the Windows App Certification Kit.
- Inno Setup Preprocessor (ISPP) changes:
- Added new function RemoveFileExt.
- Documented predefined variable ISPPCC_INVOKED.
- Console-mode compiler (ISCC) change: Added new command line parameter /J. Can be used to #include additional files.
- Unicode Inno Setup: Added official Armenian translation.
- Minor tweaks.
Size: 2.27 MB
Download Inno Setup Stable
Download QuickStart Pack