Inno Setup:包含所有子文件夹的文件夹

时间:2013-12-26 19:24:49

标签: inno-setup

我在.iss档案中有这一行:

Source: "..\Tcl\*"; DestDir: "{app}\Tcl"; Flags: ignoreversion

包装文件夹Tcl。但它只需要文件夹内的文件,但不会在Tcl内部使用子文件夹。有没有办法将整个文件夹Tcl与所有子文件夹和文件一起使用? (没有逐行列出所有子文件夹)。

Inno Setup 5.4.2。

2 个答案:

答案 0 :(得分:72)

是的,有。只需在[Files]部分条目中加入recursesubdirs标记即可。关于这面旗帜的帮助如下:

  

指示编译器或安装程序也搜索Source   source目录下的子目录中的filename / wildcard。

因此,您应该做的就是以这种方式修改[Files]部分条目:

[Files]
Source: "..\Tcl\*"; DestDir: "{app}\Tcl"; Flags: ignoreversion recursesubdirs

答案 1 :(得分:8)

您也可以使用Inno向导,但是如果您希望这些文件保留在他们导入的文件夹中,您需要在之后更正脚本,因为向导会将它们放入app默认文件夹。

向导将生成:

 [Files]
 Source: "..\Tcl\*"; DestDir: "{app}; Flags: ignoreversion recursesubdirs

如果您需要维护您需要的文件夹结构:

 [Files]
 Source: "..\Tcl\*"; DestDir: "{app}\Tcl"; Flags: ignoreversion recursesubdirs

Inno向导更新自5.6.1(08/14/2018)
Inno安装脚本向导现在可以选择指定子文件夹。在向导的应用程序文件步骤中,使用添加文件夹... 按钮,然后在选择要添加的文件夹后,确保选中它列表然后单击编辑... 并在目标子文件夹文本框下,指定您希望以前选择的文件夹内容的位置。