On 23/03/2022 17:56, Christian Blackburn wrote:
> I appreciate your response. I want to do the ExtractTemporaryFile()
> because I need to run a complicated rule set to determine whether or not
> to copy each file and I don't want ~100 character lines per each file.
> I'd rather it just loop through a list of files as a way to make more
> maintainable code.
I strongly discourage you from using ExtractTemporaryFile to do mass
installation. Only use [Files] entries. This allows proper
uninstallation and use of the other Flags.
Note that you can use a combination of Check functions or Components
(the latter is preferred) to let you flexibly decide whether or not to
install a file, and you can either use wildcards or iterate and generate
entries with ISPP to reduce the number of files that need to be
explicitly listed.
A good tactic is to group the files in your source directories by
component, such that you can just use `Source: component1\*` to easily
include all the files for that component. The final installed directory
structure does not need to be the same as your source layout.
Also note that boolean expressions are supported for components, so you
can condition a particular file or fileset on `ComponentA and not
ComponentB`, for example.