Software Update: Inno Setup 5.3.2 Beta

Jordan Russell Software has released beta version 5.3.2 of Inno Setup. This program makes it easy to create installation packages for applications running under Windows. Inno Setup provides the ability to add information to the registry and ini files, create shortcuts, and compress the installation files. Furthermore, it can of course also create an uninstaller and the installation can be performed in multiple languages. The corresponding list of changes looks like this:

Version 5.3.2 beta:

  • Replaced constant {regasmexe} with {dotnet11} and {dotnet20}.
  • Pascal Scripting: Added new PrepareToInstall event function. Return a non empty string from this function to instruct Setup to stop at the Preparing to Install wizard page showing the returned string as the error message.
  • Minor fixes and tweaks.

Version 5.3.1 beta:

  • [Setup] AppMutex and support function CheckForMutexes change: to specify a mutex name containing a comma you can now escape the comma with a backslash.
  • Minor tweaks.

Version 5.3.0 beta:

  • Added .NET support (these cause an internal error if used on a system with no .NET Framework present):
    • Added new [Files] section flag: gacinstall.
    • Added new [Files] section parameter: StrongAssemblyName.
    • Added new constants: {regasmexe}, {regasmexe32}, {regasmexe64}.
  • MinVersion parameter/directive change: if you leave one of the versions empty then it will use the default MinVersion for that platform.
  • Pascal Scripting: Added new MinimizePathName support function.
  • Added Unicode support: there’s now a second version of Inno Setup available called Unicode Inno Setup. Key features of this version are its ability to display any language on any system regardless of the system code page, and its ability to work with Unicode filenames. Notes:
    • Unicode Inno Setup uses the existing ANSI .isl language files and you should not convert these to Unicode or anything similar since it does so automatically during compilation using the LanguageCodePage setting listed inside the language’s .isl file. However, you do need to convert existing [Messages] and [CustomMessages] entries in your .iss files to Unicode if the language used a special “code page” (character set).
    • the [Setup] Show directiveUndisplayableLanguages ​​is ignored by Unicode Inno Setup.
    • Unicode Inno Setup is compiled with Delphi 2009 instead of Delphi 2 and 3, leading to slightly larger files. The source code however is still compatible with Delphi 2 and 3, and a non Unicode version will remain available.
    • Unicode Inno Setup and installers created by it require Windows 2000/XP or newer. The non Unicode version still works on NT/9x.
    • Existing installations of your programs done by non Unicode installers can be freely updated by Unicode installers, and vice versa.
    • Unicode Pascal Scripting notes:
      • The Unicode compiler sees type ‘String’ as a Unicode string, and ‘Char’ as a Unicode character. Its ‘AnsiString’ type hasn’t changed and still is an ANSI string. Its ‘PChar’ type has been renamed to ‘PAnsiChar’.
      • The Unicode compiler is more strict about correct ‘;’ usage: it no longer accepts certain missing ‘;’ characters.
      • The new RemObjects PascalScript version used by the Unicode compiler supports Unicode, but not for its input source. This means it does use Unicode string types as said, but any literal Unicode characters in the script will be converted to ANSI. This doesn’t mean you can’t display Unicode strings: you can for example instead use encoded Unicode characters to build Unicode strings (like S := #$0100 + #$0101 + ‘Aa’;), or load the string from a file using LoadStringsFromFile.
      • Some support functions had their prototype changed: some parameters of CreateOutputMsgMemoPage, RegQueryBinaryValue, RegWriteBinaryValue, OemToCharBuff, CharToOemBuff, LoadStringFromfile, SaveStringToFile, and GetMD5OfString are of type AnsiString now instead of String.
      • Added new SaveStringsToUTF8File, and GetMD5OfUnicodeString support functions.
      • If you want to compile an existing script that imports ANSI Windows API calls with the Unicode compiler, either upgrade to the ‘W’ Unicode API call or change the parameters from ‘String’ or ‘PChar’ to ‘AnsiString’. The ‘AnsiString’ approach will make your [Code] compatible with both the Unicode and the non Unicode version.
    • Unicode Inno Setup supports UTF-8 encoded .iss files (but not UTF-16).
    • Unicode Inno Setup supports UTF-8 and UTF-16LE encoded .txt files for LicenseFile, InfoBeforeFile, and InfoAfterFile.
    • QuickStart Pack: added ISPP predefined variable UNICODE.
  • Thanks to Carlo Kok and Evgeny Karpov of RemObjects Software for their help related to Unicode support.
  • QuickStart Pack: added ISPP functions Trim, and GetMD5OfUnicodeString.

Version number 5.3.2 beta
Release status beta
Operating systems Windows 7, Windows 9x, Windows NT, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008
Website Jordan Russell Software
License type Conditions (GNU/BSD/etc.)