Препроцессор Inno Setup: Пример сценария

Предлагаем вам ознакомиться с примером сценария, в котором используются функции и директивы ISPP.

; -- ISPPExample1.iss --
;
; Этот сценарий демонстрирует различные базовые операции,
; которые можно использовать при помощи препроцессора Inno Setup (ISPP).
; Чтобы включить директиву #define, удалите символ комментария (;),
; или используйте ISCC с ключом /D в командной строке.

#pragma option -v+
#pragma verboselevel 9

;#define Debug

;#define AppEnterprise

#ifdef AppEnterprise
  #define AppName "My Program Enterprise Edition"
#else
  #define AppName "My Program"
#endif

#define AppVersion GetFileVersion(AddBackslash(SourcePath) + "MyProg.exe")

[Setup]
AppName={#AppName}
AppVersion={#AppVersion}
DefaultDirName={pf}\{#AppName}
DefaultGroupName={#AppName}
UninstallDisplayIcon={app}\MyProg.exe
LicenseFile={#file AddBackslash(SourcePath) + "ISPPExample1License.txt"}
VersionInfoVersion={#AppVersion}
OutputDir=userdocs:Inno Setup Examples Output

[Files]
Source: "MyProg.exe"; DestDir: "{app}"
#ifdef AppEnterprise
  Source: "MyProg.chm"; DestDir: "{app}"
#endif
  Source: "Readme.txt"; DestDir: "{app}"; \
   Flags: isreadme

[Icons]
Name: "{group}\{#AppName}"; Filename: "{app}\MyProg.exe"

#ifdef Debug
  #expr SaveToFile(AddBackslash(SourcePath) + "Preprocessed.iss")
#endif

Текст этого сценария также находится в файле под названием ISPPExample1.iss. Он размещается в папке "Examples" корневого каталога Inno Setup и в любое время вы можете выполнить его компиляцию.

Смотрите также файл ISPPBuiltins.iss, который находится в корневом каталоге Inno Setup.