我有一个InnoSetup脚本,它应该排除一个充满其他子文件夹(>40) 的子文件夹,除了其中的一个。
在编译器输出中,我确实看到这个子文件夹中的文件正在压缩,但是安装不会创建该文件夹,也不会将文件复制到其他任何地方。
脚本如下所示:
( Release\extra\more\subs
是充满其他文件夹的文件夹--我只想包含Release\extra\more\subs\need_this_one
。)
[Files]
; Use all files and folders except some special ones
Source: "Release\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs; Excludes: "more\subs"
; Do use some specific folders
Source: "Release\extra\more\subs\need_this_one\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
第一行应该复制Release
中的所有文件和文件夹,但与路径匹配的"more\subs
“的子文件夹除外--会这样做。
我当时的印象是,第二行将复制Release\extra\more\subs\need_this_one
子文件夹和其中的文件-,但它不复制。
有人知道为什么会这样吗?
发布于 2016-09-14 00:36:04
看来我习惯回答自己的问题了。;)
问题是,DestDir
需要{app}
之上的路径来知道将文件放在哪里。
因此,可以使用的脚本是:
[Files]
; Use all files and folders except some special ones
Source: "Release\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs; Excludes: "more\subs"
; Do use some specific folders
Source: "Release\extra\more\subs\need_this_one\*"; DestDir: "{app}\extra\more\subs\need_this_one"; Flags: ignoreversion recursesubdirs
这是有意义的,虽然不清楚为什么没有路径,它不会简单地将文件从need_this_one
复制到{app}
.
https://stackoverflow.com/questions/39480373
复制相似问题