《InnoSetup使用说明.docx》由会员分享,可在线阅读,更多相关《InnoSetup使用说明.docx(12页珍藏版)》请在优知文库上搜索。
1、InnoSetup运用说明特别用途的标识行几个(MeSSageS)段的项事实上不是用于在屏幕上显示的,它们是用于在安装程序中指定所运用的字体和字型号的.这些可选项中的每一个都有一个前导下划税字符(*_-起先,谢畚阅DefaUltml文件头部的注驿的运用方法示例。(Registry这个段是可选的,他定义了一些注册发J姐用于在史制完文件之后创建在用户的系统中.下面是(Registry)段的-个示例0RegistryRoot:HKCU;Subkey:SoftwareMyCompany;Flags:UninsdeletekeyifemptyRoot:HKCU;Subkey:SoftwareMyComp
2、anyMyProgram;Flags:UninsdeletekeyRoot:HK1.M;Subkey:SoftwareMyCompany;Flags:UninsdeletekeyifemptyRoot:HK1.M;Subkey:SoftwareMyC0mp3yMyProgram;Flags:UninsdeletekeyRoot:HK1.M;Subkey:SoftwareMyCompanyMyProgram;VaIueType:string;VaIueName:InstaIIPath;VaIueData:(app)下面列出了支持的参数;Root(必需的)说明:极健,必湎是下列各项之一:HKCR(
3、HKEY_C1.A$ES_ROOT)HKCU(HKEY_CURRENT_USER)HK1.MHKU(HKEY_USERS)HKCC(HKEY_CURRENTONFG)示例;Root:HKCUSubkey(必需的)说明:子键名称,可以包括常居。示例:Subkey:,SoftwareMyCompayMyProgram”VaIueType说明,键值的数据类型,必需是下列各项之一,nonestringexpandszmuftiszdwordbinary假如指定了none(孰认设置),安装程序将创建一个没有键值的键,在这种状况卜将忽视VaIueName和VaIueData参数.假如指定了String.安
4、装程序将创建一个字符串(REG.SZ)值.假如指定了expand,安装程序将创建一个扩展字符串(REG_EXPAND_$Z依,这种数据类型主要用在WindowsNT上,包林也支持Windows928.假如指定了multi%安装程序将创建一个多行文本(REG_MUIT1.sZ)伯.假如指定了dword.安装程序将创建一个整数REG_DWORO)(ft,假如指定了binary,安装程序将创建一个二进制(REG.BINARY值,示例:VaIueType:stringVaIueName说明:要创建的城值的名称,可以包含常量.找如它是空的,将会写入玳认(Default)假中.假如VaIUeTyPe参数被
5、设置为none,该参数将被忽视.示例:VaIueName:VersionVaIueData说明:雄伯的数据。假如VaIUeTVpe参数是string,expands2或multsz,该多数是个可以包含常量的字符串.假如数据类型是dword,该参数可以是个十进制整数(例如“123D或者是一个十六进制整数(例如假如数招类型是binary,这是一个十六进制字节序列的形式:OOffI234”,假如数据类型是none,该舂数被忽视。对于一个string,expandsz或者multisz类型的键值,在这个梦数中你可以运用一个特别的叫做olddata)的常量olddata常JN代去的是注册农世值原来的数据
6、.假如你想要添加个字符串到一个己经存在的镀信时olddata常量时很有用的,例如,(。Iddata)mpp.假如该键值并不存在或者不是一个字符串类型,这时(olddata)常某会被睁默地删除.假如刚要被创建的裸伯是multisz类型,但是已经存在的灌值并不足多行文本(例如它是REG.SZ或REG_EXPANo_SZ)类型.这时ddata)常骑也会被静默地删除,反之亦然,对于一个multisz类型的犍值.在这个参数中你可以运用一个特别的叫做(break的常贽来嵌入换行(nulls).示例:VaIueData:1.0Flags说明:“标记,这个参数是一个附加的选项集合,可以多个选JS共同运用,运用
7、空格分开多个选项.卜面列出了被支持的选项:Createvalueifdoesntexist当指定了此标记时,只有当相同名称的便值不存在时安装程序才会创建该键(ft.较如数据类型是none,或者同时指定了deletevalue标记将忽视该标记.deletekey当指定了此标记时,假如该项已存在.安装程序会首先尝试去删除它.包括其中的扬值和子键,然后窗如VaIueType不是none的话它将创建一个新的键和键值.deletevalue当指定了此标记时,假如该键值已存在,安装程序会首先尝试删除该键值。然后假如VaIueType不足none,并且该键不存在时它将创建该犍和新的键值.dontcreate
8、key当指定了此标记时,假如该读不存在于用户的系统中安装程序将不会试图创建该键或任何键值。假如改建不存在将不显示错误消息.典型地该标记同Uninsdeletekey标记结合运用,以便在安装时没有创建该犍时确保在州就期间删除该犍.noeor假如安装程序在创隹溟或键值时无论什么缘由失败不显示锚误消息,preservestringtype该标记只用于VSIueType参数为string或expandsz时.当指定了此标记并且该犍(ft不存在或者已存在的潴值不是字符申类型(REG_SZ或REG_EXPAND_SZ)时,该项将由VaIueType指定的类型创建.骰如该键tf在并且是一个字符串类型.该项招
9、由及预先存在的母值相同的键值类型昔代.Uninsclearvalue当理序被卸载时,将设置该键值的数据为空的字符串类型REG.SZ).该标记不能同Uninsdeletekey标记一起运用.Uninsdeletekey当程序被卸我时,删除整个键,包括其下全都的键慎和子键,对于由Windows自身运用的读来说运用该标记明显不是一个好的办法,你应当将该标记应用到你自己的应用程序犍中.Uninsdeletekeyifempty当程序被卸载时,假如该键下没有其它键依和子键则将其删除,该标记可以结合Uninsdeletevalue标记一起运用。Uninsdeletevalue当程序和驳时删除该键值,该标记
10、可以结合Uninsdeletekeyifempty标记一起运用.留意:对于InnoSetup1.1之前的版本,你可以及none数据类型起运用该标记则将会成为deletekeyifempty(如为空则删除该键)功能的标记.这个技巧现在已经不在被支持.你必需运用Uninsdeletekeyifempty标记来实现该功能.示例:Flags:Uninsdeletevalue公共参数Run&(UnInstaIIRun段(Run)段是UJ选的,指定匐息数埴的程序在胜利安装程序以后及显示结束时话框之前被执行“同样(UninstaIIRun段也是可选的,指定做日数届的程序在啊J极程序.的第一步时被执行.除非下
11、面有其它说明.两个段共有相【可的语法,每个程序根据你的脚本端排的依次被执行,当出路(RUnMUninaallRUnl的项时,安装程序将会笄到当前的程序终止之后才处理下一个,当然除非运Hl了nowait标记.这是一个(Run段的示例,Run:,app)INIT.EXE;Parameters:*x下面列出了支持的参数:(必需的)说明:要被执行的程序,或要被打开的文件/文件夹.假如不是一个.exe或文件,你必需在该项中运用Shellexec标记。该参数可以包含常就,示例::appINIT.EXE,Parameters说明:程序可选的吩咐行参数,该参数可以包含常地.,示例:Parameters:xWo
12、rkmgDir说明;程序起始位置的书目.假如没有指定该参数或该参数是空的将不会变更任何特别的书目.该参数可以包含常用,示例:WorkingDir:(app)RunOnceId说明:只在(UninstalIRun段里面有效。假如相同的应用程序被安装招过了次,run顶将会费发出现在和载记录文件里面.通过将一个字符印赋值给RUnOnCeId,你可以确保一个独特的WninStaHRUn)或在卸载期间只被执行一次.例如.假如在卸驶记录中的“run”中有两个或者更多的带有RunOnceId彝数并被设置为DeIService”的顶,则只孑jAi终一,个带有一个RunOnceid参数并被设置为DdServic
13、e的项会被执行,其余的将被忽视留意RunOnceId参数是大小写敏感的.示例:RunOnceId:DeIServiceFlags说明:标记,这个参数是一个附加的选项集合,可以买个选项共同运用,运用空格分开多个选项.下面列出了俄支持的选项;owait报如指定了该标记,将不会等待该项处理被结束运行之前就进行到下一个Run)项.或者结束安装程序.不能结合Waituntilidle标记一起运用.Shellexec物如不是一个可以干脆执行的文件(一个.exe或文件则该标记是必需的.当设跟了该标记时,可以是一个文件夹或者任何己注册的文件类型一一包括.hlpz.doc等等。文件将会被用户系统中的及该文件类型
14、相关联的应用程序打开,就像用户在资源管理器中用鼠标双击该文件一样.当在中运用一个文件夹名称时,建议在后面加上一个反制杠字符(例如group),以确保可能有相同名称的程庠不会被执行。同样要留意文件夹只能在Windows9%NT4上被打开因为从那时起运用广个新的资源管理器的外壳.运用Shellexec标记有一个缺点,那就是无法等待该过程结束,因此,它始终就像被指定了nowalt标记一样操作。Skipifdoesntexist假如指定了该标记,Kl不存在安装程序将不会地示锵误消息.它只适用于(Run段.因为卸驶程序从来不显示错误消息在UninstaIIRun项执行失败时runmaximued亚如指定了该标记.将会在一个最大化的窗口启动程序或文档.runminimized假如指定了该标记,将会在一个最小化的窗口启动程序或文档.Waituntilidle假如指定了该标记,它将料件出到该过程正在等待用户的输入并且没有未决的蜡入时.联而代之的是等待该过程的结束.(该标记诩用WaitForlnputIdieWin32函数J不能结核nowat一起运用.示例:Flags:nowait公共参数(UninstaIIDeIete段该段是可选的.该段是用来定义一些附加的除了那些被安装的成用程序之外的要被卸载程序刷除的文件或书目.运用该段来删除由你的应用程序创建的.INI