,它是被自动创建的。这个段所创建的子目录是可以脱离主应用程序而共同使用的目录。当然在 [Files] 段里面的文件被复制到某个目录之前你并不一定要创建它,然而在卸载程序的时候在 [Dirs] 和 [UninstallDelete] 段里面没有指定的目录就不会被删除。
这是一个 [Dirs] 段的示例:
[Dirs]
Name: "{app}\data"
Name: "{app}\bin"
上面的示例演示了在安装程序的应用程序目录被创建之后,在应用程序的下面建立两个子目录。
下面列出了支持的参数:
Name (必需的)
说明:
要被建立的目录的名称,通常它以一个目录常数开始。
示例:
Name: "{app}\MyDir"
Flags
说明:
“标记”,这个参数是一个附加的选项集合,可以多个选项共同使用,使用空格分开多个选项。下面列出了被支持的选项:
deleteafterinstall
告诉安装程序象平常一样建立目录,但是当安装程序结束(或被中止)之后这个目录是空的情况下将这个目录删除。如果释放脚本的 [Run] 段所执行的程序所需要的临时的数据时这个选项是很有用的。
uninsalwaysuninstall
告诉卸载程序试图删除这个目录而不管它是不是空的。通常卸载程序只会尝试删除在安装之前不存在的目录。
uninsneveruninstall
告诉卸载程序不要去删除这个目录。在默认情况下,在 [Dirs] 段里面指定的目录如果是空的卸载程序就会尝试将其删除。
示例:
Flags: uninsneveruninstall
公共参数
[Files] 段
这个段是可选的,但对于大多数安装程序来说是必不可少的。在这里定义了安装程序需要复制到用户的系统当中的全部文件。
在安装期间,卸载程序和数据被自动的复制到应用程序的目录当中去,因此你不必手工的将它们添加到 [Files] 段。
这是一个 [Files] 段的示例:
[Files]
Source: "CTL3DV2.DLL"; DestDir: "{sys}"; CopyMode: onlyifdoesntexist; Flags: uninsneveruninstall
Source: "MYPROG.EXE"; DestDir: "{app}"
Source: "MYPROG.HLP"; DestDir: "{app}"
Source: "README.TXT"; DestDir: "{app}"; Flags: isreadme
下面列出了支持的参数:
Source (必需的)
说明:
“源文件”的名称,如果没有提供全程路径时编译器会根据安装程序的源目录的路径预先设定号路径。
允许通配符,根据通配符可以在一项里面简单的指定一组文件。当使用了通配符的时候,所有匹配的文件使用相同的可选项。
当标记(flag) external 被指定的时候,Source 必须是一个在发布介质或用户的系统中已经存在的文件(或带有通配符)的全程路径。(例如“{src}\license.ini”).
示例:
Source: "MYPROG.EXE"
DestDir (必需的)
说明:
这个是文件将要被安装到用户的系统当中去的目录。它几乎总是以一个目录常量开始的。如果指定的路径不存在于用户的系统中,它将会被自动的创建。
示例:
DestDir: "{app}"
DestName
说明:
这个常数为将要安装到用户的系统中的文件指定一个新的名字。在默认的情况下,安装程序使用的是同 Source 参数一样的文件名,因此在多数情况下不需要指定该参数。
示例:
DestName: "MYPROG2.EXE"
CopyMode
默认:
normal
说明:
“复制模式”,指定文件复制的规则,必须是下列规则之一。
normal
这是最常使用的选项。如果文件已经存在于用户的系统当中并且比要复制的文件的版本更新时(由文件的版本信息决定),安装程序将会向用户提出询问是否要替换掉已经存在的文件。如果已经存在的文件不包含文件的版本信息,它将会被覆盖而不会向用户询问。
参见这个标题下面的注意中关于版本检查的重要说明。
onlyifdoesntexist
只有当用户的系统中的文件不存在时才复制文件。
alwaysoverwrite
总是覆盖已经存在的文件,甚至如果已经存在的文件比被安装的文件的版本更新的情况下也是如此。对于共享的系统文件永远也不要这样做!
alwaysskipifsameorolder
类似于 normal, 不同之处是如果遇到已经存在的文件不会向用户提出询问。当这个模式被使用时,更新的一经存在的文件时从来不会被替换的。
示例:
CopyMode: normal
Attribs
说明:
为文件指定附加的“属性”,它可以包括一个或多个属性,它们是:readonly, hidden, system. 如果没有指定这个参数,安装程序不会给文件指派任何特殊的属性。
示例:
Attribs: hidden system
FontInstall
说明:
告诉安装程序需要被安装的文件是一个字体文件,该值是被保存到注册表或 WIN.INI 文件中的字体名称,这个名称必须严格地和在资源管理器中双击字体文件看到的名称相对应。注意,安装程序会自动的在字体名称的末尾加上“(TrueType)”。
如果这个字体文件不是一个 TrueType 字体,你必须在 Flags 参数中指定 fontisnttruetype 标记。
建议在安装字体到 {fonts} 目录的时候使用复制模式参数 onlyifdoesntexist 和标记(flag)参数 uninsneveruninstall.
示例:
Source: "OZHANDIN.TTF"; DestDir: "{fonts}"; FontInstall: "Oz Handicraft BT"; CopyMode: onlyifdoesntexist; Flags: uninsneveruninstall
Flags
说明:
“标记”,这个参数是一个附加的选项集合,可以多个选项共同使用,使用空格分开多个选项。下面列出了被支持的选项:
comparetimestampalso
(专门用途) 如果要被复制到用户系统的文件已经存在于用户的系统当中并且它们具有相同的版本信息,告诉安装程序进行时间戳(文件的日期时间属性)的比较。 在正常情况下安装程序不会覆盖已经存在的文件,但是当使用了这个标记的时候, 如果已存在的文件的时间戳比它的版本信息还要旧,安装程序在安装文件时就会覆盖它。当复制模式不是 normal 或 alwaysskipifsameorolder 这两者之一时该标记不起作用。
confirmoverwrite
当文件已经存在每个文件在复制之前始终向用户提出询问。
deleteafterinstall
告诉安装程序象平常一样复制文件,但是当安装程序结束(或被中止)之后将这个文件删除。如果释放脚本的 [Run] 段所执行的程序所需要的临时的数据时这个选项是很有用的。
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] 下一页