Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Installation Inno安装程序仅排除树根中的一个子目录,而不排除树中具有相同名称的所有其他子目录_Installation_Inno Setup - Fatal编程技术网

Installation Inno安装程序仅排除树根中的一个子目录,而不排除树中具有相同名称的所有其他子目录

Installation Inno安装程序仅排除树根中的一个子目录,而不排除树中具有相同名称的所有其他子目录,installation,inno-setup,Installation,Inno Setup,我的[Files]标题中有: [Files] Source: "{#PathToRepoRoot}\Development\aaa\bbb\libs\MyApp.exe"; DestDir: "{app}"; \ Flags: ignoreversion Source: "{#PathToRepoRoot}\Development\aaa\bbb\*"; DestDir: "{app}"; \ Ex

我的
[Files]
标题中有:

[Files]
Source: "{#PathToRepoRoot}\Development\aaa\bbb\libs\MyApp.exe"; DestDir: "{app}";  \
    Flags: ignoreversion
Source: "{#PathToRepoRoot}\Development\aaa\bbb\*"; DestDir: "{app}"; \
    Excludes: "*.pyc, {#PathToRepoRoot}\Development\aaa\bbb\Build"; \
    Flags: ignoreversion recursesubdirs createallsubdirs
它应该从
Build
文件夹中排除所有文件,但由于某些原因,它没有这样做。我尝试过将
bbb\*
更改为
bbb\
bbb
,但没有效果。我也看了一眼,但这没用。奇怪的是,
.pyc
文件被排除在外


我发现执行
排除了“*.pyc,Build”符合我的要求。据我所知,这将排除所有名为
Build
的文件。在我的情况下,这不是一个问题,因为我只有一个这样的文件。但是我更喜欢更具体的排除。

我相信中的掩码是根据从根文件夹开始的相对路径(
{PathToRepoRoot}\Development\aaa\bbb
)进行评估的。所以您只想匹配
构建

但实际上,如果您仅将
Build
用作排除掩码,它将排除树中任何位置的所有
Build
文件和文件夹,因为默认情况下,掩码与(相对)路径的末尾相匹配。在掩码前加上反斜杠,告知Inno Setup根据(相对)路径的开头对其进行评估:

Excludes: \Build