我在带有通配符AfterInstall
参数的[Files]
条目上使用Source
。调用CurrentSourceFilename
只是给我源模式 - 而不是正在处理的实际文件。有没有办法获得实际的文件名?
以下示例将为每个文件记录{code:DirName}\*.ext
一次,而不是{code:DirName}\file1.ext
,{code:DirName}\file2.ext
等。
[Files]
Source: "{code:DirName}\*.ext"; Flags: external; AfterInstall: LogName
[Code]
procedure LogName;
begin
Log(CurrentSourceFilename);
end;
function DirName(Param: String): String;
begin
Result := 'dir';
end;
答案 0 :(得分:1)
当使用external
标志时,确实无法检索该信息 - 对我来说似乎是个错误。
如果没有external
标记,您可以使用CurrentFilename
找到文件名。
相反,您可以使用Pascal脚本编写文件副本(包括日志记录)。
请参阅Inno Setup: copy folder, subfolders and files recursively in Code section。