inno7zip.exe readme
-------------------

  Inno7zip, (c) 2003 Softshape Development
  To enable full 7-zip support for ISTool.
  Freeware with Delphi sources.


*** Overview ***


ISTool's 7-zip support, currently, won't work if your OutputBaseFilename contains
any ISPP preprocessor defines, like

  OutputBaseFilename={#ProgName}.{#ProjectID}.{#MajorVersion}{#MinorVersion}.{#Build}

Inno7zip enables this support. Yes, I know about Create7zip.vbs by Frank Heindrfer,
but it just didn't work for me. Also, I needed some more features to handle final releases.

Requires: ISTool, ISPP, and 7-zip installed.


*** Step-by-step ***


1) Put inno7zip.exe somewhere.

2) Make the following directive the last line of your InnoSetup script:

   #expr SaveToFile("X:\work\dev\setup\~tmpscript.iss")

Tmp script name is your choice.

3) Add ISTool post-compile directive:

[_ISToolPostCompile]
Name: X:\work\dev\setup\inno7zip.exe; Parameters: X:\work\dev\setup\~tmpscript.iss

That's all.


*** Options ***


Optionally, you may add the section [Inno7zip] to your script and override inno7zip settings.
Below are their default values:

[Inno7zip]
Enable7zip=true        ; enable/disable inno7zip
CompressionLevel=9     ; 7-Zip compression level, 1..9
7zipParams='-m0=BCJ2 -m1=LZMA:d23 -m2=LZMA:d19 -m3=LZMA:d19 -mb0:1 -mb0s1:2 -mb0s2:3 -mx='+CompressionLevel
DeleteTmpScript=true   ; delete or save temporary script inno7zip gets as parameter
CopyTo=                ; after compression, copy 'OutputBaseFilename.exe' to some other file

These options allow to make final builds different from the intermediary ones. Like:

#define BuildRelease
...

[Inno7zip]
#ifdef BuildRelease
CompressionLevel=9
CopyTo=X:\pub\dev\{#ProgName}{#MajorVersion}{#MinorVersion}.exe
#else
CompressionLevel=1
#endif

