【1】此参数是一个附加选项的集合。可以使用空格将多个选项分隔开。
【2】支持以下选项:
32位 当在“Source”和“DestDir”参数中使用{sys}常量时,将该常量映射到32位系统目录。将“regserver”和“regtypelib”标志设置为将文件视为32位,并将“sharedfile”标志设置为更新32位共享DLLs注册表键。在32位模式安装中,这是默认行为。
64位 当在“Source”和“DestDir”参数中使用{sys}常量时,将该常量映射到64位系统目录。将“regserver”和“regtypelib”标志设置为将文件视为64位,并将“sharedfile”标志设置为更新64位共享DLLs注册表键。在64位模式安装中,这是默认行为。
【3】
【allowunsafefiles】
禁用编译器对不安全文件的自动检查。强烈建议不要使用此标志,除非您确信知道自己在做什么。 【comparetimestamp】
(不推荐;请参阅下面的说明) 指示Setup在要安装的文件已经存在于用户系统上并且至少满足以下条件之一时进行时间戳比较: •现有文件和正在安装的文件都没有版本信息。 •在条目中也使用了忽略版本号标志。 •没有使用替换相同版本号标志,并且现有文件和正在安装的文件具有相同的版本号(根据文件的版本信息确定)。 如果现有文件的时间戳比正在安装的文件更早,则现有文件将被替换。否则,它不会被替换。 除非作为最后的手段,否则不建议使用此标志,因为存在固有的问题:NTFS分区存储的时间戳是UTC(与FAT分区不同),这会导致本地时间戳(Inno Setup默认使用的时间戳)在用户更改系统时区或日光节约时间生效或失效时发生偏移。这可能会导致文件在用户未预期的时间被替换或在用户预期的时间不被替换的情况。
confirmoverwrite
在替换现有文件之前始终要求用户确认。
【createallsubdirs】
默认情况下,编译器在递归搜索Source文件名/通配符时会跳过空目录。这个标志会在安装时创建这些目录(就像你为它们创建了[Dirs]条目一样)。 必须与recursesubdirs一起使用。
【deleteafterinstall】
指示 Setup 像往常一样安装文件,但在安装完成(或取消)后删除它。这可用于提取在脚本的[Run]部分执行的程序所需的临时数据。 此标志不会导致在安装过程中未被替换的现有文件被删除。 此标志不能与isreadme、regserver、regtypelib、restartreplace、sharedfile或uninsneveruninstall标志一起使用。
【dontcopy】
在正常文件复制阶段不要将文件复制到用户的系统中,而是静态地将文件编译到安装程序中。如果文件仅由[Code]部分处理并使用ExtractTemporaryFile提取,则此标志很有用。
【dontverifychecksum】
防止 Setup 在提取后验证文件校验和。将此标志用于希望在已编译到 Setup 中的文件上进行修改的文件。 必须与nocompression一起使用。
【external】
指示 Setup 不要将文件复制到用户的系统中,而是将文件链接到安装程序的外部位置。此标志仅适用于静态编译的文件。这个标志指示Inno Setup不要将Source参数指定的文件静态编译到安装文件中,而是从分发媒体或用户系统的现有文件中复制。有关更多信息,请参阅Source参数的描述。
【fontisnttruetype】
如果使用FontInstall参数安装非TrueType字体,则指定此标志。
【gacinstall】
将文件安装到.NET Global Assembly Cache中。当与sharedfile一起使用时,只有在引用计数为零时才会卸载文件。 Uninstaller使用StrongAssemblyName参数指定的强名称来卸载文件。 如果在没有.NET Framework的系统上尝试使用此标志,则会引发异常。
【ignoreversion】
完全不比较版本信息; 无论版本号如何,都替换现有文件。 此标志仅应用于应用程序私有的文件,绝不应用于共享的系统文件。
【isreadme】
文件是“README”文件。安装中只能有一个文件具有此标志。当文件具有此标志时,安装完成后将提示用户是否查看README文件。如果选择“是”,Setup将使用文件类型对应的默认程序打开该文件。因此,README文件应该始终以.txt、.wri或.doc等扩展名结尾。 请注意,如果Setup需要重启用户的计算机(由于安装带有“restartreplace”标志的文件或由于其他原因),则在重启之前会提示用户保存任何未提交的更改。
【nocompression】
防止编译器尝试压缩文件。对无法从压缩中获益的文件类型(例如JPEG图像)使用此标志可以加快编译过程,并在最终安装中节省一些字节。
【noencryption】
防止文件被加密存储。如果您启用了加密(使用[Setup]节指令加密),但希望能够在用户输入正确的密码之前使用[Code]节支持函数ExtractTemporaryFile提取文件,则使用此标志。
【noregerror】
当与regserver或regtypelib标志组合使用时,如果注册失败,安装程序将不会显示任何错误消息。
【onlyifdestfileexists】
只有在用户系统上已经存在同名文件时才安装该文件。如果您的安装是现有安装的补丁,并且您不希望安装用户没有的文件,则此标志可能很有用。
【onlyifdoesntexist】
只有在用户的系统中不存在该文件时才安装它。
【overwritereadonly】
总是覆盖只读文件。如果没有这个标志,安装程序将询问用户是否应该覆盖现有的只读文件。
【promptifolder】
默认情况下,当正在安装的文件具有比现有文件更旧的版本号(或更旧的时间戳,当使用比较时间戳标志时)时,安装程序将不会替换现有文件。(有关详细信息,请参阅本主题底部的“备注”部分。)当使用此标志时,安装程序将询问用户是否应该替换该文件,默认答案是保留现有文件。
【recursesubdirs】
指示编译器或安装程序也在源目录下的子目录中搜索源文件名/通配符。
【regserver】
注册DLL/OCX文件。设置此标志后,安装程序将调用DLL/OCX文件导出的DllRegisterServer函数,卸载程序将在删除文件之前调用DllRegisterServer。当与sharedfile结合使用时,只有当引用计数达到零时,DLL/OCX文件才会被取消注册。
在64位模式安装中,该文件被假定为64位映像,并将在64位进程中注册。您可以通过指定32位标志来覆盖此设置。
有关详细信息,请参阅本主题底部的备注。
【regtypelib】
注册类型库(.tlb)。卸载程序将注销类型库(除非指定了uninsneveruninstall标志)。与regserver标志一样,当与sharedfile结合使用时,只有当引用计数达到零时,卸载程序才会取消该文件的注册。
在x64版本的Windows上运行64位模式安装时,类型库将在64位进程中注册。您可以通过指定32位标志来覆盖此设置。
不支持在Windows的Itanium版本上以64位模式注册类型库。
有关详细信息,请参阅本主题底部的备注。
【replacesameversion】
使用此标志时,如果该文件已经存在于用户的系统中,并且与正在安装的文件具有相同的版本号,则安装程序将比较这些文件,如果它们的内容不同,则替换现有文件。
默认行为(即当不使用此标志时)是不会用相同的版本号替换现有文件。
【restartreplace】
当一个现有的文件需要被替换,并且它正在被另一个正在运行的进程使用(锁定)时,安装程序将默认显示一条错误消息。这个标志告诉安装程序在下次系统重新启动时注册要替换的文件(通过调用MoveFileEx或在WININIT.INI中创建一个条目)。当发生这种情况时,将提示用户在安装过程结束时重新启动计算机。
注意:如果用户没有管理权限,此标志不起作用。因此,当使用此标志时,建议您将privilesrequired [Setup]部分指令保留为默认设置admin。
【setntfscompression】
指示安装程序在文件上启用NTFS压缩(即使它没有替换文件)。如果由于任何原因(例如,文件系统不支持压缩)设置压缩状态失败,则不会显示错误消息。
【sharedfile】
指定该文件在多个应用程序之间共享,并且只有在没有其他应用程序使用它时才应在卸载时删除。大多数安装到Windows系统目录的文件都应该使用这个标志,包括. ocx、. bpl和. dpl文件。
【sign】
此标志指示编译器在存储原始源文件之前对它们进行数字签名。如果没有设置[Setup]节指令SignTool,则忽略。
【signonce】
此标志指示编译器在存储原始源文件之前对它们进行数字签名,但仅限于文件尚未签名的情况下。如果没有设置[Setup]节指令SignTool,则忽略。
【skipifsourcedoesntexist】
如果源文件不存在,这个标志指示编译器(如果还使用了外部标志,则指示安装程序)静默地跳过该条目,而不是显示错误消息。
【solidbreak】
当启用实体压缩时,此标志指示编译器在压缩与Source匹配的文件之前完成当前的压缩流并开始一个新的压缩流。这允许安装程序立即查找文件,而不必先解压缩前面的任何文件。如果您发现花太多时间解压缩属于未选择组件的文件,则在大型多组件安装中可能很有用。
【sortfilesbyextension】
此标志指示编译器在按路径名排序之前压缩按扩展名排序的找到的文件。如果还使用固体压缩,这可能会减少安装程序的大小。
【sortfilesbyname】
此标志指示编译器在按路径名排序之前压缩按名称排序的找到的文件。如果还使用固体压缩,这可能会减少安装程序的大小。如果还使用了sortfilesbyextension,则首先按扩展名对文件进行排序。
【touch】
这个标志使安装程序将安装文件的时间/日期戳设置为由TouchDate和TouchTime [Setup]节指令指定的时间/日期戳。
如果与外部标志结合使用,则此标志不起作用。
【uninsnosharedfileprompt】
卸载共享文件时,如果其引用计数达到零,则自动删除该文件,而不是询问用户。必须与sharedfile标志结合使用才能生效。
【uninsremovereadonly】
卸载文件时,请先从文件中删除任何只读属性,然后再尝试删除它。
【uninsrestartdelete】
如果使用了此标志,并且该文件在卸载时正在使用,则卸载程序将在系统重新启动时将要删除的文件排队,并在卸载过程结束时询问用户是否要重新启动。当卸载像shell扩展这样不能通过编程方式停止的东西时,这个标志很有用。注意,要使该标志生效,需要管理权限。
【uninsneveruninstall】
永远不要删除文件。当安装在任何情况下都不应该删除的非常常见的共享文件(例如MFC dll)时,这个标志可能很有用。
请注意,如果该标志与sharedfile标志结合使用,则该文件将永远不会在卸载时被删除,但引用计数仍将适当地递减。
【unsetntfscompression】
指示安装程序在文件上禁用NTFS压缩(即使它没有替换文件)。如果由于任何原因(例如,文件系统不支持压缩)设置压缩状态失败,则不会显示错误消息。