innosetup语法

innosetup语法

Inno Setup 是一个免费的安装程序制作工具,用于 Windows 软件分发。它使用一种脚本语言来定义安装程序的各个方面,包括文件复制、注册表更新、快捷方式创建等。以下是一些基本的 Inno Setup 语法和示例,帮助你入门。

基本结构

一个典型的 Inno Setup 脚本包含以下几个部分:

  1. [Setup] 部分:定义安装程序的全局设置。
  2. [Files] 部分:指定要复制到目标系统的文件和目录。
  3. [Icons] 部分:定义桌面、开始菜单和其他位置的快捷方式。
  4. [Registry] 部分:处理注册表的读写操作。
  5. [Run] 部分:在安装结束时运行特定的命令或脚本。
  6. [Code] 部分(可选):使用 Pascal Script 来编写自定义逻辑。

示例脚本

下面是一个简单的 Inno Setup 脚本示例,展示了上述各个部分的用法:

; 定义安装程序的名称、版本等信息 [Setup] AppName=MyApp AppVersion=1.0 DefaultDirName={pf}\MyApp DefaultGroupName=MyApp OutputDir=. Compression=lzma SolidCompression=yes ; 指定要复制的文件 [Files] Source: "C:\Path\To\Your\App\*.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "C:\Path\To\Your\App\data*"; DestDir: "{app}\data"; Flags: ignoreversion recursesubdirs createallsubdirs ; 创建快捷方式 [Icons] Name: "{group}\MyApp"; Filename: "{app}\MyApp.exe" Name: "{desktop}\MyApp"; Filename: "{app}\MyApp.exe" ; 注册表操作(如果需要) ; [Registry] ; Root: HKCU; Subkey: "Software\MyApp"; ValueType: string; ValueName: "InstallPath"; ValueData: "{app}" ; 安装完成后运行的命令(如果需要) ; [Run] ; Filename: "{app}\postinstall.bat"; Description: "Running post-installation script..."; Flags: nowait skipifsilent ; 自定义代码段(可选) [Code] function NextButtonClick(CurPageID: Integer): Boolean; var ResultCode: Integer; begin if CurPageID = wpWelcome then begin MsgBox('欢迎来到 MyApp 的安装向导!', mbInformation, MB_OK); end; Result := True; { Default action is to allow the wizard to continue } end;

关键术语解释

  • {pf}:表示“Program Files”文件夹的路径。
  • {app}:表示应用程序的安装目录。
  • {group}:表示在“开始”菜单中创建的组名(基于 DefaultGroupName)。
  • Flags:用于控制文件复制行为的标志,如 ignoreversion(忽略版本号)、recursesubdirs(递归子目录)等。

编译和运行

  1. 将你的脚本保存为 .iss 文件(例如 myapp_installer.iss)。
  2. 打开 Inno Setup Compiler(ISCC),选择你保存的 .iss 文件进行编译。
  3. 编译成功后,会生成一个安装程序可执行文件(通常是 .exe 格式)。

希望这些信息能帮助你快速上手 Inno Setup!如果你有更具体的需求或问题,请随时提问。