关闭

关闭

关闭

封号提示

内容

首页 Inno Setup中文帮助.pdf

Inno Setup中文帮助.pdf

Inno Setup中文帮助.pdf

上传者: leyuexiang 2010-12-18 评分 0 0 0 0 0 0 暂无简介 简介 举报

简介:本文档为《Inno Setup中文帮助pdf》,可适用于IT/计算机领域,主题内容包含InnoSetup中文帮助一凡整理于QQ:Email:xsjbycom目录第一部分简介、InnoSetup是什么?、文档约定第二部分怎么使用、创建安符等。

InnoSetup中文帮助一凡整理于QQ:Email:xsjbycom目录第一部分简介、InnoSetup是什么?、文档约定第二部分怎么使用、创建安装程序、脚本格式概述、段中参数、常量、公共参数、组件和任务参数、安装脚本段Setup段Types段Components段Tasks段Dirs段Files段Icons段INI段InstallDelete段Languages段Messages段CustomMessages段LangOptions段Registry段RunUninstallRun段UninstallDelete段、Pascal脚本介绍创建Code段事件函数脚本化常量检查参数BeforeInstall和AfterInstall参数卸载代码示例支持的函数参考支持的类参考使用自定义向导页使用DLL使用COM自动操作对象第三部分其它信息、常见问题解答、向导页、安装顺序、其它注意事项命令行编译器执行、安装命令行参数、安装退出代码、卸载命令行参数、卸载退出代码、不安全文件、感谢、与我联系第一部分简介、InnoSetup是什么?InnoSetup是一个免费的Windows安装程序制作软件。第一次发表是在年InnoSetup今天在功能设置和稳定性上的竞争力可能已经超过一些商业的安装程序制作软件。关键功能:支持现在所有正在使用的位Windows版本:WindowsServerXPMeNT(不需要服务包)。支持创建单个EXE格式的安装程序使你的程序可以很方便地在网络上发表。同时也支持磁盘延伸。标准的WindowsXP样式向导界面。定制安装类型例如:完整安装最小安装自定义安装。完整的卸载功能。文件安装:包括完全的“压缩”支持bzip和ZipLZMA文件压缩。安装程序可以比较文件版本信息替换正在使用的文件使用共享文件计数注册DLLOCX和类型库以及安装字体。可以在任意地方创快捷方式建包括开始菜单和桌面。创建注册表和INI项目。完整的Pascal脚本引擎。支持multilingualLanguagessection安装。支持密码和加密安装。后台安装和后台卸载。全部源代码公开(BorlandDelphi)。、文档约定WindowsNT这是“WindowsXPNTMe以及更高版本”的简写。WindowsNT只要是WindowsNT就可以它包括Windows和XP(就是NT)除非另外说明。等宽文本当你在帮助中看到等宽文本它表示脚本在中输入的引用的文字。第二部分怎么使用、创建安装程序安装程序用编译脚本的方式创建脚本其实就是一个类似INI文件格式的ASCII码文本文件。(它不象你想象的那么复杂!)脚本用一个“iss”(表示InnoSetupScript)的扩展名。脚本控制着安装程序的所有方面。由它指定哪些文件将被安装到什么地方在哪里创建快捷方式且被命名为什么。脚本文件一般可以用安装程序编译器程序内置的编辑器进行编辑。在你编写完脚本后下一个最终步骤就是选择安装程序编译器中的“编译”。创建完成后就可以运行根据你脚本编译的安装程序了。按默认这个安装程序创建在包含脚本文件目录下的名为“输出”目录中。如果你想看看它是怎样工作的启动安装程序编译器单击“文件|打开”并选择位于InnoSetup安装目录下的Samples子目录中的一个脚本文件。(你也可以将这些示例脚本作为你自己编写脚本的模板。)、脚本格式概述InnoSetup准备了一些段。每个段控制一个不同方面的安装程序部分。每个段用包含在括号中的段名开始每个段里面是一些相关的条目。其中有两种不能类型的段:有些就象Setup段条目包含指示名和值(格式为Directive=Value)还有一些就象Files段条目被参数分隔。这里是一个例子:SetupAppName=MyProgramFilesSource:"MYPROGEXE"DestDir:"{app}"注意在脚本中指定多个相同名字的段是合法的。你可以通过在行起始位置加个分号“”在脚本中写入“注释”(编译时被编译时忽略)。例如:这是一条注释放在这里只是要提醒我自己支持AClike#include指示从个别文件放入行到#include指示位置的脚本。语法是:#include"filenametxt"如果文件名中未提供完整的路径编译将在包含#include指示的同一目录中查找。文件名用“compiler:”作为前缀的场合中在编译器目录中查找文件。、段中参数所有脚本中的段除Setup、Messages、CustomMessages和LangOptions段包含的行中可有多个各自的参数。下列是Files段中的一个举例:FilesSource:"MYPROGEXE"DestDir:"{app}"Source:"MYPROGHLP"DestDir:"{app}"Source:"READMETXT"DestDir:"{app}"Flags:isreadme每个参数都由一个名字组成然后跟随一个冒号然后是一个值。除非另外说明如果参数未指定将设定为一个默认值。一行中多个参数用分号隔开并且可以以任何次序列出。参数的值如果包含一个用户定义的字符串时一般来说用双引号(")包含例如象文件名。引号使用不是必需的但这样做可能会在值中的首位或末位被加入空格以及分号和双引号。在要引用的值中使用一个双引号字符用两个连续的双引号字符例如:"This""contains""embedded""quotes"安装程序编译器会将它视作:This"contains"embedded"quotes如果你希望参数值是一个单个双引号字符用四个双引号字符:""""。外面的两个用于包含引用的字符内部两个写入单个的双引号字符。、常量脚本中的项目大部分可以嵌入常量。这些预定义的字符被包含在括弧{}中。安装程序或卸载程序会根据用户选择和系统配置将这些常量翻译为文字值。例如{win}在大部分系统中会被翻译为“C:WINDOWS”。字符“{”视作为常量开始。如果你想将它作为实际字符使用你必须使用两个连续的“{”字符。(对于“}”则不需要。)当在常量后面直接跟随一个反斜杠时如果常量的值末端已经包含了一个反斜杠号安装程序或卸载程序将自动删除该反斜杠号。因此如果一个特殊常量值是“C:”{constantname}file将翻译为“C:file”而不是“C:file”。如果你想防止意外将反斜框放入{}字符中例如{app}{}。下面是支持的常量列表。目录常量{app}用户在安装向导中的选择目标位置页中选定的应用程序目录。例如:如果你在项目中指定了{app}MYPROGEXE用户选择了“C:MYPROG”作为应用程序目录安装程序将该文件安装到“C:MYPROGMYPROGEXE”。{win}系统的Windows目录。例如:如果你在条目中使用了{win}MYPROGINI且系统的Windows目录是“C:WINDOWS”安装程序或卸载程序将它传送到“C:WINDOWSMYPROGINI”。{sys}系统的WindowsSystem目录(在NT平台上是System)。例如:如果你在条目中使用了{sys}CTLDDLL且系统的WindowsSystem目录是“C:WINDOWSSYSTEM”安装程序或卸载程序将它传送到“C:WINDOWSSYSTEMCTLDDLL”。{src}安装程序文件所在目录。例如:你在条目中使用了{src}MYPROGEXE且用户正在从“S:”进行安装安装程序将它传送到“S:MYPROGEXE”。{sd}Windows系统所在的驱动器。一般来说是“C:”。在WindowsNT平台这个目录常量等同于SystemDrive环境变量。{pf}程序文件位置。系统的ProgramFiles目录的路径一般来说是“C:ProgramFiles”。{cf}公共文件目录。系统的CommonFiles目录路径一般来说是“C:ProgramFilesCommonFiles”。{tmp}用于安装程序或卸载程序的临时目录。这不是用户的TEMP环境变量值。它是在安装程序启动后在用户临时目录中创建的子目录(象名为“C:WINDOWSTEMPISxxxxxtmp”)。目录中的所有文件和子目录在安装程序或卸载程序退出时删除。在安装时这主要用于提取在Run段运行、但安装后不再需要的文件。{fonts}字体目录。通常是在Windows下面的名字“FONTS”的目录。{dao}DAO目录等同于{cf}MicrosoftSharedDAO。外壳文件夹常量InnoSetup支持其它目录常量设置作为外壳文件夹常量引用。它们可以与其它目录常量相同方法使用。下面的“user”常量引用到当前登录的用户配置文件“common”常量引用到所有用户配置文件。除非有另外的注释外壳文件夹常量工作于InnoSetup支持的所有Windows版本包括Windows和NT。*=如果登录的用户缺少管理员权限或操作系统是WindwosMe“common”结构映射到“user”结构。{group}开始菜单文件夹路径由用户在安装程序的选择开始菜单文件夹向导页中选定。在WindowsNTXP这个文件夹总是创建在所有用户配置文件下除非非用户安装程序的用户没有管理员权限这种情况下它将创建在用户配置文件下。{localappdata}本地应用程序数据文件夹。{sendto}当前用户的SendTo文件夹路径。(这里不是指公共SendTo文件夹。){userappdata}和{commonappdata}应用程序数据文件夹路径。{userdesktop}和{commondesktop}*桌面文件夹路径。{userdocs}和{commondocs}我的文档(MyDocuments)文件夹路径(在NT私人文件夹)。{userfavorites}和{commonfavorites}*收藏夹文件夹路径。这些常量设置必须至少“,”MinVersion设置。只在Windows和更高版本支持{commonfavorites}如果在先前的Windows版本中使用它将翻译为等同于{userfavorites}目录。{userprograms}和{commonprograms}*开始菜单中程序文件夹路径。{userstartmenu}和{commonstartmenu}*开始菜单顶层路径。{userstartup}和{commonstartup}*开始菜单启动文件夹路径。{usertemplates}和{commontemplates}*模板文件夹路径。仅在Windows和更高版本支持{commontemplates}如果使用的是先前的Windows版本它将被翻译为等同于{usertemplates}目录。其它常量{}反斜杠字符。查阅本页顶部的注释获取使用{}和只使用一个字符之间的差异。{NAME|DefaultValue}嵌入一个环境变量值。NAME用于指定要使用的环境变量的名字。DefaultValue确定如果指定的变量在用户系统中不存在时置入的字符串。如果你想在常量内部包含一个逗号、竖条(“|”)或括弧后半部(“}”)你必须通过“encoding”先用一个“”字符然后跟随它的两上数字的十六进制代码替换从而避开它。逗号是“c”竖条是“c”括弧后半部是“d”。如果你想实际使用“”使用“”。NAME和DefaultValue可以包含常量。注意你不需要将常量中的括弧替换成上面所说的字符上面所说的括弧后半部只在使用于其它地方时需要替换。示例:{COMSPEC}{PROMPT|$P$G}{cmd}系统标准命令解释器的完整路径名。在WindowsNTXP是WindowsSystemcmdexe。在WindowsMe是WindowsCOMMANDCOM。注意当展开这个常量时COMSPEC环境变量不使用。{computername}正在运行安装程序或卸载程序的电脑名(等同于由GetComputerName函数返回的值)。{drive:Path}从指定的路径中提取并返回驱动器卷标和冒号(例如“C:”)在UNC路径的场合中它返回服务器和共享名(例如“SERVERSHARE”)。Path指定路径。如果你想在常量内部包含一个逗号、竖条(“|”)或括弧后半部(“}”)你必须通过“encoding”先用一个“”字符然后跟随它的两上数字的十六进制代码替换从而避开它。逗号是“c”竖条是“c”括弧后半部是“d”。如果你想实际使用“”使用“”。可以包含常量。注意你不需要将常量中的括弧替换成上面所说的字符上面所说的括弧后半部只在使用于其它地方时需要替换。示例:{drive:{src}}{drive:c:pathfile}{drive:serversharepathfile}{groupname}用户在安装程序向导页的选择开始菜单文件夹中选定的文件夹名。它不同于{group}只有名字不包含路径。{hwnd}(特殊用途)转换为安装程序的背景窗口句柄。{wizardhwnd}(特殊用途)转换为安装程序的向导窗口句柄。如果向导窗口句柄在翻译完成时不能用这个句柄设置为“”。{ini:Filename,Section,Key|DefaultValue}从INI文件插入一个值。Filename指定要读取的INI文件的名字。Section指定读取的段名。Key指定读取的键名。DefaultValue确定如果指定的键不存在时要插入的字符。如果你想在常量内部包含一个逗号、竖条(“|”)或括弧后半部(“}”)你必须通过“encoding”先用一个“”字符然后跟随它的两上数字的十六进制代码替换从而避开它。逗号是“c”竖条是“c”括弧后半部是“d”。如果你想实际使用“”使用“”。FilenameSection和Key可以包含常量。注意你不需要将常量中的括弧替换成上面所说的字符上面所说的括弧后半部只在使用于其它地方时需要替换。示例:{ini:{win}MyProgini,Settings,Path|{pf}MyProgram}{language}选定语言的内部名字。查阅Languages段帮助文档获取更多信息。{cm:MessageName}{cm:MessageName,Arguments}根据活动语言嵌入一个自定义消息值。MessageName用于指定要读取的自定义消息名。查阅CustomMessages段帮助文档获取更多信息。Arguments可随意在消息值中指定逗号分隔的声明列表。如果你想在常量内部包含一个逗号垂直条(“|”)或括号(“}”)你必须使用“encoding”避开它用“”字符后面跟随它的两位数十六进制代码替换。逗号是“c”垂直条是“c”括号是“d”如果你想包含一个实际的“”字符用“”。每个Arguments中的声明可以包含常量。注意你不需要避开上面描述的常量中的括号只有在别处使用这种括号时需要避开。示例:{cm:LaunchProgram,InnoSetup}如果活动语言是简体中文上面的示例被翻译为“运行InnoSetup”。{reg:HKxxSubkeyName,ValueName|DefaultValue}插入一个注册表值。HKxx指定注册表根键查阅Registry段帮助文档获取可用根键列表。SubkeyName指定要读取的子键名。ValueName指定要读取的值名如果你想读取键的“默认”值将ValueName留空。DefaultValue确定在指定的注册表值不存在或不是一个字符串类型的值(REGSZ或REGEXPANDSZ)时要插入的字符。如果你想在常量内部包含一个逗号、竖条(“|”)或括弧后半部(“}”)你必须通过“encoding”先用一个“”字符然后跟随它的两上数字的十六进制代码替换从而避开它。逗号是“c”竖条是“c”括弧后半部是“d”。如果你想实际使用“”使用“”。SubkeyNameValueName和DefaultValue可以包含常量。注意你不需要将常量中的括弧替换成上面所说的字符上面所说的括弧后半部只在使用于其它地方时需要替换。示例:{reg:HKLMSoftwareMyProgram,Path|{pf}MyProgram}{param:ParamName|DefaultValue}插入一个命令行参数值。ParamName指定要读取的命令行参数名。DefaultValue确定如果指定的命令行参数不存在或它的值不能确定时要插入的字符。如果你想在常量内部包含一个逗号、竖条(“|”)或括弧后半部(“}”)你必须通过“encoding”先用一个“”字符然后跟随它的两上数字的十六进制代码替换从而避开它。逗号是“c”竖条是“c”括弧后半部是“d”。如果你想实际使用“”使用“”。ParamName和DefaultValue可以包含常量。注意你不需要将常量中的括弧替换成上面所说的字符上面所说的括弧后半部只在使用于其它地方时需要替换。示例:{param:Path|{pf}MyProgram}如果指定命令行Path="c:MyProgram"上面的例子翻译为c:MyProgram。{srcexe}安装程序文件的完整路径名例如“C:SETUPEXE”。{uninstallexe}由安装程序提取的卸载程序的完整路径名例如“C:ProgramFilesMyProgramuninsexe”。这个常量一般用于在Icons段条目创建一个卸载图标。它只在Uninstallable设为yes(默认设置)时有效。{sysuserinfoname}{sysuserinfoorg}Windows已许可的名字和组织这个信息从注册表中读取。{userinfoname}{userinfoorg}{userinfoserial}用户在用户信息向导页(可以通过UserInfoPage指示来启用)中分别输入的名字组织和序列号。一般来说这些常量用于在Registry或INI条目中保存它们以后要使用的值。{username}正在运行安装程序或卸载程序的用户的名字(也可以用GetUserName函数返回)。、公共参数有三个可选的被所有段条目支持的参数它们是:Languages描述:一个用空格分隔的语言名列表告诉安装程序条目属于哪种语言。如果最终用户从列表中选择了一个语言该条目就执行(例如:安装文件)。不带Languages参数的条目总是安装除非其它参数中有限制。示例:Languages:ennl除用空格将它们隔开外你也可以使用boolean表达式。查阅组件和任务参数获取boolean表达式的示例。MinVersion描述:指定条目要进行处理的最小Windows版本WindowsNT版本。如果你在版本中的一个使用“”那么条目将不在平台中进行处理。构建号和或安全服务包级别可能包含在版本号中。这将忽略任何在脚本Setup段中的MinVersion指示。不带MinVersion参数的条目总是安装除非其它参数中有限制。示例:MinVersion:,OnlyBelowVersion描述:基本上是和MinVersion相对。指定条目不进行处理的最小Windows和WindowsNT版本。例如如果你加入,用户正在运行Windows或NT那么条目将进行处理但如果用户正运行于Windows(报告它的版本是)或Windows(报告它的版本是NT)它将不进行处理。版本中的一个放入“”表示不受版本上限。构建号和或安全服务包级别可能包含在版本号中。这将忽略任何在脚本Setup段中的MinVersion指示。不带OnlyBelowVersion参数的条目总是安装除非其它参数中有限制。示例:OnlyBelowVersion:,、组件和任务参数这里有两个可选的参数被除Types、Components和Tasks段以外所有其它段中的条目支持。它们是:Components描述:用空格分隔的组件名列表告诉安装程序条目属于哪个组件。如果最终用户从列表中选择了一个组件那么该条目就进行处理(例如:安装文件)。不带组件参数的条目总是安装除非其它参数对其有限制。示例:FilesSource:"MYPROGEXE"DestDir:"{app}"Components:mainSource:"MYPROGHLP"DestDir:"{app}"Components:helpSource:"READMETXT"DestDir:"{app}"Tasks描述:用空格分隔的任务名列表告诉安装程序条目属于哪个任务。如果最终用户从列表中选择了一个任务那么该条目就进行处理(例如:安装文件)。不带任务参数的条目总是安装除非其它参数对其有限制。“不创建任何快捷方式”选项框不控制Icons带任务参数的条目(它们有自己的选项框)。因此如果你已经定义了带任务参数的快捷方式安装程序将改变“不创建任何快捷方式”的文字到“不创建开始菜单文件夹”。示例:IconsName:"{group}MyProgram"Filename:"{app}MyProgexe"Components:mainTasks:startmenuName:"{group}MyProgramHelp"Filename:"{app}MyProghlp"Components:helpTasks:startmenuName:"{userdesktop}MyProgram"Filename:"{app}MyProgexe"Components:mainTasks:desktopicon除用空格分隔外你也可以使用boolean表达式作为组件和任务参数。支持包含not、and和or操作。例如:ComponentsName:aDescription:aName:bDescription:bTasksName:pDescription:aorbComponents:aorbName:qDescription:aandbComponents:aandbName:rDescription:notaorbComponents:notaorbName:sDescription:not(aorb)Components:not(aorb)Name:tDescription:aorboldstyleComponents:ab、安装脚本段Setup段这个段包含用于安装程序和卸载程序的全局设置。某些提示对于你创建的任何安装程序都是必需的。这是Setup段的一个示例:SetupAppName=MyProgramAppVerName=MyProgramversionDefaultDirName={pf}MyProgramDefaultGroupName=MyProgram下列指示可以放置到Setup段中:(粗体为必需项)编译器相关CompressionDiskClusterSizeDiskSliceSizeDiskSpanningEncryptionInternalCompressLevelMergeDuplicateFilesOutputBaseFilenameOutputDirOutputManifestFileReserveBytesSlicesPerDiskSolidCompressionSourceDirUseSetupLdrVersionInfoCompanyVersionInfoDescriptionVersionInfoTextVersionVersionInfoVersion安装程序相关功能:这些指示影响安装程序的操作或保存和被卸载程序使用。AllowCancelDuringInstallAllowNoIconsAllowRootDirectoryAllowUNCPathAlwaysRestartAlwaysShowComponentsListAlwaysShowDirOnReadyPageAlwaysShowGroupOnReadyPageAlwaysUsePersonalGroupAppendDefaultDirNameAppendDefaultGroupNameAppCommentsAppContactAppIdAppModifyPathAppMutexAppNameAppPublisherAppPublisherURLAppReadmeFileAppSupportURLAppUpdatesURLAppVersionAppVerNameChangesAssociationsChangesEnvironmentCreateAppDirCreateUninstallRegKeyDefaultDirNameDefaultGroupNameDefaultUserInfoNameDefaultUserInfoOrgDefaultUserInfoSerialDirExistsWarningDisableDirPageDisableFinishedPageDisableProgramGroupPageDisableReadyMemoDisableReadyPageDisableStartupPromptEnableDirDoesntExistWarningExtraDiskSpaceRequiredInfoAfterFileInfoBeforeFileLanguageDetectionMethodLicenseFileMinVersionOnlyBelowVersionPasswordPrivilegesRequiredRestartIfNeededByRunShowLanguageDialogTimeStampRoundingTimeStampsInUTCUninstallableUninstallDisplayIconUninstallDisplayNameUninstallFilesDirUninstallLogModeUninstallRestartComputerUpdateUninstallLogAppNameUsePreviousAppDirUsePreviousGroupUsePreviousSetupTypeUsePreviousTasksUsePreviousUserInfoUserInfoPage修饰:这些指示只用于安装程序的显示目的。AppCopyrightBackColorBackColorBackColorDirectionBackS

用户评论(0)

0/200

精彩专题

上传我的资料

每篇奖励 +2积分

资料评价:

/15
仅支持在线阅读

意见
反馈

立即扫码关注

爱问共享资料微信公众号

返回
顶部