Added .NET Framework 4.0 support:
Added constants {dotnet40}, {dotnet4032}, and {dotnet4064}. An exception will be raised if an attempt is made to expand these constants on a system with no .NET Framework version 4.0 present.
[Files] section flag gacinstall can now be used on .NET Framework 4.0 assemblies too.
Windows 7 changes:
[Icons] section flag foldershortcut is now ignored when running on Windows 7 (or later), as folder shortcuts do not expand properly on the Start Menu anymore.
[Setup] section directive changes:
When SignedUninstaller is set to yes, any temporary self-copies used by Setup are now digitally signed too.
Uninstallable may now be set to a boolean expression, which may contain calls to check functions. For example: Uninstallable=not IsTaskSelected('portablemode'). See the Uninstallable documentation for details.
AppVerName is no longer required if AppVersion is specified. It will now effectively default to: {cm:NameAndVersion,[AppName],[AppVersion]}. The Compiler IDE's New Script Wizard now also asks for an AppVersion instead of an AppVerName.
If a text VersionInfo* directive is set to an empty string (as opposed to not being specified), then the version info field is really set to an empty string now, instead of forcing a default value.
VersionInfoProductTextVersion now defaults to VersionInfoProductVersion if set, else AppVersion if AppVersion is set and does not include constants, else VersionInfoTextVersion.
Unicode Inno Setup: an issue with the taskbar button re-appearing on /VERYSILENT installs has been fixed.
Unicode [ code] based on RemObjects Pascal Script SVN code revision 228.
Minor tweaks.