gpt4 book ai didi

inno-setup - 创新设置 : Exclude a directory and its files also

转载 作者:行者123 更新时间:2023-12-04 17:25:38 56 4
gpt4 key购买 nike

我在 Inno Setup 中使用“Exclude”标志,以便根据用户的架构从安装中排除子目录名称“Bin32”或“Bin64”。

我想要的只是不要安装无用的文件夹及其所有文件和子目录。

这是我目前的规则:

[Files]
Source: "Z:\Work\temp\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs

; Exclude
Source: "*"; Excludes: "\Bin64"; DestDir: "{app}"; Flags: recursesubdirs; Check: not Is64BitInstallMode
Source: "*"; Excludes: "\Bin32"; DestDir: "{app}"; Flags: recursesubdirs; Check: Is64BitInstallMode

首先,我不太明白排除规则开头的“*”代表什么?
其次,它适用于 Bin32/64 文件夹中的所有子目录,但文件仍被安装,我想不出不安装它们的方法......

谢谢。

最佳答案

每个条目都是一个操作,不受任何其他条目的影响。考虑到这一点,情况是这样的:

  • 第一行从 z:\work\temp 开始安装.
  • 第 2 行,如果在 32 位模式下,安装来自 SourceDir 的所有内容除了 \Bin64
  • 第 3 行,如果在 64 位模式下,安装来自 SourceDir 的所有内容除了 \Bin32

  • 我希望您的 SourceDir (如果未指定脚本路径)与 Z:\Work\Temp 相同因此,您基本上最终安装了所有东西。

    如果您复制第一个条目,并移动 Excludes (没有\前缀)和 Check参数,它应该可以按您的要求工作:
    [Files]
    Source: "Z:\Work\temp\*"; Excludes: "Bin64"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Check: not Is64BitInstallMode
    Source: "Z:\Work\temp\*"; Excludes: "Bin32"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs; Check: Is64BitInstallMode

    关于inno-setup - 创新设置 : Exclude a directory and its files also,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10645269/

    56 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com