【发布时间】:2012-01-19 10:03:54
【问题描述】:
在运行安装程序时,有什么方法可以从 PascalScript 访问文件列表([Files] 部分中的条目)?我们正在尝试使应用程序可以直接从设置中运行,而不必安装它,这样可以更轻松地维护文件列表。
【问题讨论】:
-
您应该澄清您的问题,但如果我理解正确,您希望在运行时从设置中提取文件以便运行它们 - 如果是这样,请查看
ExtractTemporaryFile()辅助函数。但是,您可以不通过 AFAIK 访问文件列表,您必须对所需文件的提取进行硬编码。 -
@mghie:是的,我们使用了 ExtractTemporaryFile(并且遇到了该函数的其他问题,例如无法将多个同名文件提取到不同的目录)——但到目前为止,我们很难-将要提取的文件列表编码到脚本中,因此在更改列表时我们有两个地方需要维护。很遗憾,无法从脚本访问该列表。
-
您打算使用通配符从目录或单个文件列表中添加文件吗?在后一种情况下,可以在单个文本文件中包含文件列表并将其添加到文件部分并填充例如使用 InnoSetup 预处理器的代码段中的字符串列表。
-
@TLama:不,问题是应用程序要么由 InnoSetup 安装,要么直接从安装程序运行。对于后者,我们目前必须维护一个单独的文件列表来临时提取。如果我可以读取设置的实际文件列表并从中提取,那会更容易。当然,将文件列表放在单独的文件中并生成文件部分和提取代码可能是一个有趣的想法。您将如何使用预处理器来做到这一点?
-
@TLama:对不起,这个项目早就结束了,所以我没有真正尝试过。不过,我会看看您的答案,因为这可能会在另一个项目中派上用场,因为出于某种原因,同一个客户再次想要一个可执行的应用程序...... :) 这个想法听起来不错。不知道你可以用预处理器做到这一点。看起来很像Basic...