Decompiler Installshield Installation
InstallShield Decompiler InstallShield 6.x 的腳本編譯後是 setup.inx 而不是 setup.ins 。日本人寫的這個工具可以反編譯.inx ,而且還可以輸出調試符號資訊,這樣可以用 InstallShield 對腳本進行調試。 AutoIt 程式. Exe2aut 反編譯 AutoIt 3.x 的工具. Is there a way to suppress the installation (Installshield) dialog boxes? I created a response file (.iss). When I install with the response file, using 'Setup.exe -s -f1c: myresponsefile.iss', it does the install as I wanted but it still shows the dialog boxes complete with cancel buttons. A Decompiler will follow anyway. Its only a question of time when it will be written so watch out for it,hehe. F) ADD-0ON This part will describe the most common InstallSHIELD Installation. If Setup.exe (InstallSHIELD 2.x) is a 16 Bit executeable, then its called The Installation launcher.
- Decompiler Installshield Installation Software
- Silent Install Installshield
- Microsoft Installshield Download
- Installshield Install Log
- Decompiler Installshield Installation Tool
About
Inno Setup is a tool to create installers for Microsoft Windows applications. innoextract
allows to extract such installers without running the actual setup executable under Windows or using Wine. innoextract
currently supports installers created by Inno Setup 1.2.10 to 6.1.2. (details)
Author: DanielScharrer (daniel@constexpr.org)
License: zlib/libpng
In addition to standard Inno Setup installers, innoextract
also supports some modified Inno Setup variants including Martijn Laan's My Inno Setup Extensions 1.3.10 to 3.0.6.1 as well as GOG.com's Inno Setup-based game installers. innoextract
is able to unpack Wadjet Eye Games installers (to play with AGS), Arx Fatalis patches (for use with Arx Libertatis) as well as various other Inno Setup executables. See the list of limitations below.
While developed on Linux, innoextract
is cross-platform and meant to work with any C++03
to C++17
compiler, architecture and operating system supported by CMake, Boost, liblzma and (optionally) iconv.
Announcements
innoextract 1.9 released
- Added preliminary support for Inno Setup 6.1.0
- Added support for a modified Inno Setup 5.4.2 variant
- Fixed output directory being created for unsupported installers
- Fixed some safe non-ASCII characters being stripped from filenames
- Fixed handling of path separators in Japanese and Korean installers
- Fixed build with newer Boost versions
- Windows: Fixed heap corruption
- Windows: Fixed garbled output
Download
The current version of innoextract
is 1.9 (changelog):
- innoextract Source Code(mirror)innoextract-1.9.tar.gz202 KiB
MD5:964f39bb3f8fd2313629e69ffd3dab9f
signature - innoextract Windows Binaries(mirror)innoextract-1.9-windows.zip509 KiB
MD5:72d0d0dd874b6236eaa44411f4470ee1
signature - innoextract Linux Binaries(mirror)innoextract-1.9-linux.tar.xz888 KiB
MD5:33bdf359c62d4f88a51ae15048ea480e
signature - innoextract FreeBSD Binaries(mirror)innoextract-1.8-freebsd.tar.xz712 KiB
MD5:7e50020f771ce4b1827c1088c6c72a3f
signature
The files have been signed with this OpenPGP key (28555A66D7E1DEC9).
Windows binaries should work on XP or newer.
The Linux tarball includes x86, amd64 and ARMELv6j+hardfloat+vfp (Raspberry Pi compatible) binaries.
FreeBSD binaries are built against FreeBSD 9.1, but will likely also work on other versions.
All 32-bit binaries are compiled for i686
(Pentium Pro or newer). 64-bit binaries are included for some platforms.
Older versions are still available for download.
There is also a port of innoextract
to Android by Alan Woolley.
macOS
There are no pre-builtinnoextract
binaries for macOS (formerly OS X), but there are also MacPorts and Homebrew packages.You can also build it yourself by downloading the source code and then following these instructions.
Packages
innoextract
packages are available for the following operating systems and Linux distributions:
OS / Distribution | Repository | Package | Version | Type | |
---|---|---|---|---|---|
Alpine Linux | Alpine packages | innoextract | 1.9 | distro | |
ALT Linux | Sisyphus repository | innoextract | 1.9 | distro | |
AOSC OS | AOSC packages | innoextract | 1.8 | distro | |
Arch Linux | community | innoextract | 1.9 | distro | Instructions |
Calculate Linux | Portage | innoextract | 1.8 | distro | |
Chakra | Chakra Community Repo | innoextract | 1.4 | user | Instructions |
Clear Linux | sysadmin-basic | innoextract | 1.8 | distro | |
Debian stable | home:dscharrer on OBS | innoextract | 1.9 | own | Instructions |
Debian 8 (jessie) | main | innoextract | 1.4 | distro | Instructions |
Debian 9 (stretch) | main | innoextract | 1.6 | distro | Instructions |
Debian 10 (buster) | main | innoextract | 1.7 | distro | Instructions |
Debian testing (bullseye) | main | innoextract | 1.8 | distro | Instructions |
Debian unstable (sid) | main | innoextract | 1.8 | distro | Instructions |
Deepin | deepin | innoextract | 1.6 | distro | |
Devuan 1 (Jessie) | main | innoextract | 1.4 | distro | |
Devuan 2 (ASCII) | main | innoextract | 1.6 | distro | |
Devuan 3 (Beowulf) | main | innoextract | 1.7 | distro | |
Devuan Testing (Chimaera) | main | innoextract | 1.8 | distro | |
Devuan Unstable (Ceres) | main | innoextract | 1.8 | distro | |
DragonFlyBSD | DPorts | innoextract | 1.8 | distro | |
EL 7 (RHEL 7, CentOS 7, …) | scx on Copr | innoextract | 1.7 | user | |
Fedora | home:dscharrer on OBS | innoextract | 1.9 | own | Instructions |
Fedora 31 | fedora | innoextract | 1.8 | distro | Instructions |
Fedora 32 | fedora | innoextract | 1.8 | distro | Instructions |
FreeBSD | FreeBSD ports | innoextract | 1.8 | distro | Instructions |
Funtoo | nokit | innoextract | 1.7 | distro | |
Gentoo | arx-libertatis overlay | innoextract | 1.9 | own | Instructions |
GuixSD | GNU Guix | innoextract | 1.9 | distro | |
Haiku | HaikuPorts | innoextract | 1.8 | distro | |
Kali Linux | main | innoextract | 1.8 | distro | |
Linuxbrew | linuxbrew-core | innoextract | 1.9 | distro | |
macOS | Homebrew | innoextract | 1.9 | distro | Instructions |
macOS | MacPorts | innoextract | 1.8 | distro | |
Mageia | home:dscharrer on OBS | innoextract | 1.9 | own | Instructions |
Mageia 6 | Core | innoextract | 1.6 | distro | Instructions |
Mageia 7 | Core | innoextract | 1.7 | distro | Instructions |
Mageia Cauldron | Core | innoextract | 1.9 | distro | Instructions |
Manjaro | community | innoextract | 1.8 | distro | |
NetBSD | pkgsrc | innoextract | 1.9 | distro | Instructions |
NixOS | NixOS packages | innoextract | 1.9 | distro | Instructions |
OpenBSD | OpenBSD ports | innoextract | 1.9 | distro | Instructions |
OpenMandriva | OpenMandriva Association | innoextract | 1.9 | distro | |
openSUSE | home:dscharrer on OBS | innoextract | 1.9 | own | Instructions |
openSUSE | Archiving on OBS | innoextract | 1.9 | distro | Instructions |
openSUSE Leap 42.1 | official release | innoextract | 1.4 | distro | Instructions |
openSUSE Leap 42.2 | official release | innoextract | 1.6 | distro | Instructions |
openSUSE Leap 42.3 | official release | innoextract | 1.6 | distro | Instructions |
openSUSE Leap 15.0 | official release | innoextract | 1.6 | distro | Instructions |
openSUSE Leap 15.1 | official release | innoextract | 1.7 | distro | Instructions |
openSUSE Leap 15.2 | official release | innoextract | 1.7 | distro | Instructions |
openSUSE Tumbleweed | official release | innoextract | 1.9 | distro | Instructions |
Parabola GNU/Linux-libre | community | innoextract | 1.9 | distro | |
Pardus | main | innoextract | 1.7 | distro | |
Parrot OS | main | innoextract | 1.8 | distro | |
PLD Linux | packages | innoextract | 1.9 | distro | |
PureOS | main | innoextract | 1.8 | distro | |
Raspbian stable | home:dscharrer on OBS | innoextract | 1.9 | own | Instructions |
Raspbian | main | innoextract | 1.8 | distro | Instructions |
Slackware 14.0 | slackbuilds.org | innoextract | 1.4 | user | |
Slackware 14.1 | slackbuilds.org | innoextract | 1.5 | user | |
Slackware 14.2 | slackbuilds.org | innoextract | 1.7 | user | |
Solus | shannon | innoextract | 1.9 | distro | |
Solus | unstable | innoextract | 1.9 | distro | |
Source Mage | grimoire | innoextract | 1.8 | distro | |
SUSE Linux Enterprise 15 | SUSE Package Hub | innoextract | 1.7 | distro | |
Trisquel | main | innoextract | 1.6 | distro | |
Ubuntu | ppa:arx/release | innoextract | 1.9 | own | Instructions |
Ubuntu 16.04 (xenial) | universe | innoextract | 1.5 | distro | Instructions |
Ubuntu 18.04 (bionic) | universe | innoextract | 1.6 | distro | Instructions |
Ubuntu 20.04 (focal) | universe | innoextract | 1.8 | distro | Instructions |
Ubuntu 20.10 (groovy) | universe | innoextract | 1.8 | distro | Instructions |
Ubuntu 21.04 (hirsute) | universe | innoextract | 1.8 | distro | Instructions |
Void Linux | Void Packages | innoextract | 1.9 | distro | |
Windows | Chocolatey | innoextract | 1.9 | user | Instructions |
Windows | MSYS2 | innoextract | 1.9 | user | |
Windows | Scoop | innoextract | 1.9 | user | |
Windows | Yet Another Cygwin Ports | innoextract | 1.9 | user |
If your distribution is not listed, first check Repology's package version list as well as the appropriate repositories in case someone already created a package for your distribution. If you create your own packages or find one that isn't listed here, please let me know so that I can add them.
Usage
To extract a setup file to the current directory run:
$ innoextract <file>
A list of available options can be retrieved using
$ innoextract --help
Documentation is also available as a man page:
$ man 1 innoextract
Compatibility
innoextract
cannot guarantee good forward compatibility as the Inno Setup data format changes frequently. The following table lists the supported versions:
innoextract 1.9or newer | Inno Setup 1.2.10 to 6.1.2 |
innoextract 1.8 | Inno Setup 1.2.10 to 6.0.5 |
innoextract 1.7 | Inno Setup 1.2.10* to 5.6.1 |
innoextract 1.6 | Inno Setup 1.2.10* to 5.5.9 |
innoextract 1.5 | Inno Setup 1.2.10* to 5.5.6 |
innoextract 1.3 to 1.4 | Inno Setup 1.2.10* to 5.5.5 |
innoextract 1.0 to 1.2 | Inno Setup 1.2.10* to 5.4.3 |
innoextract
1.7 and older cannot extract installers created by Inno Setup 1.3.0 to 1.3.23. GOG.com Installers
GOG.com installers with a 2.x.x version number on the download page or in the filename use Inno Setup 5.5.0 and cannot be extracted by innoextract
1.2 and older. Older installers use Inno Setup 5.2.3 and usually have no version in the filename.
Some GOG.com multi-part installers with version 2.1.x or higher use RAR archives (renamed to .bin
) to store the game data. These files are not part of the Inno Setup installer. However, innoextract
1.5 or newer can extract them using the --gog
option if either unrar
or unar
is installed.
Other newer GOG.com installers don't include the raw files directly but instead store them in GOG Galaxy format: split into small parts which are then individually compressed. These files are named after their MD5 hash and stored in the tmp directory, for example 'tmp/ab/d7/abd72c0dddc45f2ce6098ce3a286066a'. innoextract
1.7 or newer will automatically re-assemble these parts and extract the original files unless the --no-gog-galaxy
option is used.
Some multi-part GOG.com installers use .bin slice files larger than 2 GiB - extracting these requires innoextract
1.8 or newer on 32-bit platforms. Older versions failed with a 'bad chunk magic' error.
Limitations
- There is no support for extracting individual components and limited support for filtering by name.
- Included scripts and checks are not executed.
- The mapping from Inno Setup constants like the application directory to subdirectories is hard-coded.
- Names for data slice/disk files in multi-file installers must follow the standard naming scheme.
Also see the list of planned/requested enhancements on the issue tracker.
Another (Windows-only) tool to extract Inno Setup files is innounp
.
Development Information
Projects using innoextract
- Inno Setup Extractor for Android uses
innoextract
as the backend - Debian's
game-data-packager
usesinnoextract
to extract the data for some games. - the ./play.it project uses
innoextract
to extract the data for some games. - The arch-gog project uses
innoextract
in many PKGBUILD scripts - vcmibuilder uses
innoextract
when installing from a GOG.com setup file - arx-install-data from Arx Libertatis uses
innoextract
to extract GOG.com installers and Arx Fatalis patches - The Linux version of the Daikatana 1.3 patch uses
innoextract
in its GOG.com install script - The FreeSpace Open Installer uses
innoextract
to extract data from the FreeSpace 2 GOG.com setup. - The defunct gogonlinux project used
innoextract
to unpack GOG.com installers - The Play on Linux/Mac project has scripts to extract installers using
innoextract
- Legaci, the Legacy Game Commandline Installer can use
innoextract
to unpack GOG.com installers
Related Projects
innounp
- alternative toinnoextract
for Windowsuninno
- portable unpacking tool for Inno Setup installers, written in Perlinno2john
- cracks password protected Inno Setup generated installers using John the Rippercabextract
- unpacker for .cab files used in Microsoft installersunshield
- unpacker for .cab files used in InstallShield installers
innounp, the Inno Setup Unpacker
Version 0.49
Supports Inno Setup versions 2.0.7 through 6.0.2
Inno Setup is a popular program for making software installations. Unfortunately, there is no official unpacker - the only method of getting the files out of the self-extracting executable is to run it. One piece of software that addresses this issue is Sergei Wanin's InstallExplorer, a plug-in for the FAR Manager that unpacks several types of installations, including Inno Setup (IS). But since it is not updated in a timely fashion, and so does not support the latest IS most of the time, this program was born. The advantages over InstallExplorer are:
- Innounp is open source and based on IS source. Therefore, it is more likely to support future IS versions.
- It recovers portions of the installation script (.iss file), including the registry changes and the compiled Innerfuse/RemObjects Pascal Script, if available.
If you want to report a bug, request a feature, or discuss anything else related to the program, please write to the forum.
- On this page:
- Usage How to report bugs What's new/History MultiArc settings Copyrights and licensing
- In other places:
- Download Forum Project summary page on SF.net Homepage
Both the source and the executable packages are compressed with WinRar. While the full-featured packer is shareware, the UnRar utility that can only extract files is free. And there are lots of free third-party programs that unpack rar just fine, e.g. 7-Zip.
As a bonus, a simple unpacker for Setup Factory installations is available on the download page. It is ripped from the SynCE project.
Usage
Innounp is a console application, and it uses command-line options to find out what to do. For a more human-friendly interface utilizing FAR or Total Commander as a front-end see the MultiArc section below. Windows Explorer fans: nullz has made some .reg scripts to add innounp into the right-click menu and Richard Santaella crafted a graphical wrapper for innounp (get it on the download page).
If an installation has setup.0 (it is made without using SetupLdr), run innounp on setup.0 instead of setup.exe.
To extract all files from a specific directory, use dirname*.*, not just dirname.
By default all files are extracted to the current directory. Use -d to override this behaviour. For example, -dUnpacked will create a directory named Unpacked inside the current directory and put the extracted files there.
The -c option is a little more tricky to explain. Suppose you opened an installation in a file manager and browsed to {app}subdirprogram.exe. Now if you copied program.exe to another location, the entire directory tree ({app}subdir) would be created and program.exe would be extracted there. -c notifies innounp that you are only interested in paths from the current directory and below, so that your file, program.exe, is extracted right where you intended to copy it, not several directory levels deeper. Note that in order to avoid confusion, files must still be specified by their full path names inside the installation.
Note that an installation can contain several identical files (possibly under different names). Inno Setup stores only one copy of such files, and by default innounp will also unpack one file. If you want to have all files that could ever be installed anywhere, regardless of how many identical files this may get you, -a option will do it.
If -m is specified, the file listing includes embeddedCompiledCode.bin which is the code made by the RemObjects Pascal Script compiler. It is possible to disassemble it using the ifps3_disasm.rar package on the download page. The result is not very readable though since it uses the basic 'disassembler' from IFPS3. Anyone wants to write a decompiler?
How to report bugs
OK, I know innounp is far from being perfect, but it is my intention to make the program usable. User feedback is a great way to achieve this. Here's what you should do if you find a bug and want it fixed.
Tell me what's wrong with innounp. If you encountered incorrect behaviour, say what you think it should do and what it actually does. If it crashed or gave an error message, say what did that - innounp, Windows, FAR, etc, and include the details.
Describe the exact steps necessary to reproduce the bug. Say what are the preconditions. Is the bug specific to some system settings? To a setup file you have? (include the problem part of the installation script or a link to the compiled setup, if it is small enough) To an IS version? To something else? Or does the bug occur regardless of these things?
Once you have the bug report ready, post it to the forum. Remember, if I can't reproduce the bug using the description you gave, the chances that it will be fixed fall dramatically.
If the above guidelines were not obvious for you, I suggest that you read the following articles.
How to Ask Questions the Smart Way by Eric Raymond
How to Report Bugs Effectively by Simon Tatham
What's new / History
0.49(2019.05.09)
- Added support for IS 6.0.
0.48(2019.01.25)
- Added support for IS 5.6.2.
- Fixed regresson bug introduced by 5.6.0 support.
0.47(2018.07.02)
- Added support for IS 5.6.0 and 5.6.1.
- Added AppId field to the script.
0.46(2016.04.11)
- Increased max. LZMA dictionary size to 1Gb (implemented in IS 5.5.9).
0.45(2015.12.31)
- Added support for IS 5.5.7.
0.44(2015.11.24)
- Fixed infinite loop issue on some unsupported versions.
- Now -m flag does not affect reconstructed script content. It always contains all info.
- Minor changes.
0.43(2015.07.18)
- Added support for IS 5.5.6.
0.42(2015.05.27)
- Added support for IS 1.3.21 and 1.3.25.
- Experimental support for some custom IS versions.
- Fixed encoding of several entries in reconstructed script.
Decompiler Installshield Installation Software
0.41(2015.03.18)
- All slashes in file paths are converted to Windows style for consistency.
- Improved some error messages.
- Fixed several parameter names in [INI] section of the script.
0.40(2013.12.20)
- Synchronized Description fields encoding in reconstructed script.
- Minor changes.
0.39(2013.07.12)
- Fixed CRC32 calculation during unpacking (regression bug).
0.38(2013.02.01)
- Added InstallDelete and UninstallDelete sections to reconstructed script.
- Added some more values to Setup section of reconstructed script.
- Several minor reconstructed script improvements.
0.37(2012.06.02)
- Added support for IS 5.5.0.
- Fixed problem with reading of large files.
- Added some more values to reconstructed script.
- Improved FAR MultiArc settings.
0.36(2011.06.01)
- Fixed support for IS 5.4.2.
- Fixed issue with '{' symbol in file names.
0.35(2010.10.01)
- Added support for IS 5.2.5 (wasn't released, but such installers can be found).
- Added command to test files for integrity.
0.34(2010.09.16)
- Less technical text in some error messages.
- Added dump of password hash to reconstructed script.
- Added some more values to reconstructed script.
0.33(2010.07.05)
- Fixed encoding for custom messages in reconstructed script.
- Fixed several parameters in [LangOptions] section.
- Fixed language names in *.isl files for Unicode-based installers.
- Added support for legacy IS versions 2.0.8 - 2.0.10.
0.32(2010.06.14)
- Added support for IS versions 5.3.10 (both ANSI and Unicode).
- Added support for INI section in reconstructed script.
0.31(2010.04.19)
- Fixed issue with endless decompression loop on incompatible files.
0.30(2010.04.12)
- Fixed issue with password processing for Unicode versions.
- Added support for IS versions 5.3.9 (both ANSI and Unicode).
- Added support for LZMA2 compression, introduced in 5.3.9.
0.29(2010.02.19)
- Added support for IS versions 5.3.8 (both ANSI and Unicode).
0.28(2010.01.14)
- Added support for IS versions 5.3.7 (both ANSI and Unicode).
- Added support for legacy IS versions 2.0.11 - 2.0.17.
- Fixed renaming of duplicate files. If we do not use -a then don't append numbers to names
(this switch does not affect different files with same name, only duplicates with same content).
0.27(2009.12.04)
- Yet another tuning for file mask processing.
- Added overwrite prompt for files extraction (and option for auto-overwrite).
- Several tweaks to reconstructed script.
0.26(2009.11.30)
- Added manifest resource to resolve Vista/Win7 UAC issue.
- Added restored %n formatter to custom messages.
- Added default OutputBaseFilename value if one from header is empty.
0.25(2009.11.26)
- Added support fro [Dirs] section in reconstructed script.
- Moved version parameter in script to comment (since it is not original IS parameter).
- Fixed ArchitecturesInstallIn64BitMode and ArchitecturesAllowed flags in script.
- Fixed file mask processing in some cases.
0.24(2009.11.20)
- Added support for IS versions 5.3.6 (both ANSI and Unicode).
- Added version information resource.
- Fixed extraction of multiple files with same name.
0.23(2009.09.25)
- Added support for IS versions 5.3.5 (both ANSI and Unicode).
- Added Inno Setup version info to reconstructed install script.
0.22(2009.08.24)
- Added support for Unicode versions.
- Added support for IS versions 5.3.0 - 5.3.4 (both ANSI and Unicode).
- Fixed rare issue with double backslashes in file path.
0.21(2009.04.24)
- Supports legacy IS versions 2.0.18 - 2.0.19
0.20(2008.05.23)
- Supports IS up to version 5.2.3
- Several bugs fixed.
0.19(2007.02.23)
- Supports IS up to version 5.1.10
- Fixed wrong representation of Unicode characters in LanguageName.
- Another fix to the handling of duplicate file names.
- New option -a to extract all copies of duplicate files.
0.18(2006.11.23)
- The reconstructed script now includes the [Types], [CustomMessages], and [Languages] sections.
- ROPS disassembler updated to support the latest build of ROPS.
- New option -f to read the password from file. This way it can include any special characters.
Be sure to save the file in the correct character encoding as no translations are applied. - Fixed the bug that caused the file timestamps to be inconsistently reported and applied (UTC vs. local).
- Updated the decompression libraries: zlib to version 1.2.3, bzip2 to version 1.03, and LZMA to version 4.43 (optimized for speed).
0.17(2005.08.31)
- Supports IS up to version 5.1.5.
- Supports Martijn Laan's My Inno Setup Extensions 3.0.6.1 (by request).
- The Types parameter is now space-separated, as required by the IS script specification.
0.16(2005.04.30)
- Supports IS up to 5.1.2-beta.
- Innounp will try to unpack new versions of IS to handle the cases when the binary format is compatible with one of the previous versions. Use -n to disable this attempt.
0.15(2005.03.08)
- Supports IS up to 5.1.0-beta.
- The old bug that prevented innounp from working properly with {reg:..} constants and the like has got another fix.
- Preliminary support for the 64-bit extensions that appeared in IS 5.1.0.
0.14(2004.10.14)
- Supports IS up to 5.0.4-beta.
- It is now possible to specify the destination directory to extract files into using the -d option. This directory will be created if necessary.
- New option -c specifies the current directory inside an installation and prevents the creation of the upper-level directories. MultiArc settings are updated accordingly.
- The old -c command is removed. To get the compiled Pascal script, use -m and extract it like a normal file.
0.13(2004.08.26)
- Supports IS up to 5.0.3-beta.
- Supports the Components and Tasks sections.
0.12(2004.07.28)
- Supports IS up to 5.0.0-beta.
- Improved processing of big installations with many files.
- Innounp now supports a certain level of user interaction - it prompts the user for password and disk changes as necessary. To switch this functionality off (e.g. in batch mode), use the -b option.
- If no command is specified, innounp displays a brief summary of the specified installation. The old -i command is removed. To get the setup script, extract it like a normal file.
0.11(2004.05.04)
- Supports IS 4.2.2.
- Supports ArcFour encryption. Use the -p switch to specify a password if files are encrypted
0.10(2004.04.26)
- Fixed (again): filenames containing invalid characters could not be specified on the command line or in a list file.
0.09(2004.04.22)
- Fixed (again): invalid characters in filenames (such as ':' and ' ') made innounp crash.
- Updated TC MultiArc settings.
0.08(2004.04.14)
- Added support for IS versions up to 4.2.1.
- Added MultiArc settings for Total Commander (thanks to Gnozal).
- Fixed a bug in MultiArc settings that prevented shells from displaying file dates and times (thanks to Maxim Ryazanov).
- The reconstructed setup script (.iss) is now included together with the 'normal' files. Using -m option it's possible to view/extract other internal files in the same way.
0.07(2004.03.16)
Silent Install Installshield
- Multiple files with the same name are not overwritten now, instead they are appended with numbers.
- -c command extracts the compiled Innerfuse Pascal Script code to a file. It can then be 'disassembled' with a separate tool. Get one on the download page.
- The output of -i command now looks more like .iss script. More data is included.
0.06(2004.03.11)
- Added support for IS versions 3.0.0 - 4.0.0.
- Supports installations that were not packaged into a single exe using SetupLdr (these can be identified by the presence of setup.0 which is appended to setup.exe in packaged installations).
- -i command displays registry changes made by an installation.
- Supports (displays and reads from filelists) filenames with national characters (single-byte character encodings only, Unicode/MBCS was not tested). The correct code page must be set in Windows for this function to work properly.
- [fix] File dates and times were not set during extraction.
0.05(2004.03.09)
- Improved batch processing. Now it's possible to browse and extract IS installations in FAR using the supplied settings for the standard MultiArc plug-in.
- Removed isbunzip.dll. Bzip2 library is linked statically.
0.04(2004.02.27)
- Initial release. Supports IS versions 4.0.1 - 4.1.8.
MultiArc settings
Unless you are a die-hard fan of command line, you may like the idea of working with IS installations like with conventional archives in a file manager. Right now two programs support this: FAR and Total Commander. Below are the instructions how to integrate innounp into each.
FAR
Copy innounp.exe to a directory in your PATH and edit your FARPluginsMultiArcFormatsCustom.ini file. There are two alternate settings differing in several aspects and each having its own pros and cons. Try the recommended setting first, if it does not work well for you, try the other setting or even combine them.
Co-operation with InstallExplorer
If you have InstallExplorer installed (or another plug-in that handles IS, but you will need to adjust the settings accordingly), you might want to let it process all the other types of installations but keep IS installations for innounp. FAR does not provide a means of customizing the plug-in call order; however, an empirical study has shown that it loads plug-ins and applies them to files in lexical order. So the solution is to rename InstallExplorer's dll file from 6InstExpl.dll to e.g. zInstExpl.dll (and restart FAR).
FAR: recommended setting
Microsoft Installshield Download
FAR: alternate setting
Will not work for IS 5.1.5 and up because new versions no longer have this signature.Total Commander
Will not work for IS 5.1.5 and up because new versions no longer have this signature. I guess the version-specific settings from above have to be cloned.
Configuration made up by Gnozal and Maxwish and posted on TC forum. Change the path below to where you have innounp installed and add this to your MultiArc.ini. Note that MultiArc is not included in the default TC installation, instead it is available as a separate download from Siarzhuk Zharski's web site. Refer to the help file for information on any additional configuration necessary.
Copyrights and licensing
Copyright © 2004-2019 QuickeneR, 2009-2019 Ariman
This program is licensed under the terms of the GNU General Public License (GPL). A copy of the license is included with the source files.
If you distribute innounp on the WWW, please put a link to its home page, http://innounp.sourceforge.net
Installshield Install Log
Over 90% of code is ripped from Inno Setup which is Copyright © 1997-2010 Jordan Russell. All rights reserved.
Portions Copyright © 2000-2006 Martijn Laan. All rights reserved.
See http://www.jrsoftware.org for details.
Contains zlib code, Copyright © 1995-2005 Jean-loup Gailly and Mark Adler.
Contains bzip2 code, Copyright © 1996-2009 Julian R Seward. All rights reserved.
Contains LZMA code, Copyright © 1999-2009 Igor Pavlov.
Innerfuse Pascal Script is Copyright © 2000-2004 by Carlo Kok, Innerfuse.
StripReloc is Copyright © 1999-2005 Jordan Russell, www.jrsoftware.org