inno-setup - 更改 Inno Setup TDownloadWizardPage 的下载位置
问题描述
我正在使用 Inno Setup 的下载系统,但我想将下载文件夹更改{tmp}
为另一个,有人可以帮助我吗?
的:
DownloadPage.Add('{#LinkJava}', ExpandConstant('{tmp}\Java.exe'), '');
为了:
DownloadPage.Add('{#LinkJava}', ExpandConstant('{src}{#PastaGeralDeApps}{#PastaDownPlugins}{#NomeExeJava}'), '');
我正在创建一个自动安装程序,我需要将应用程序存储在一个文件夹中,以便离线使用。
解决方案
您无法更改下载文件的文件夹TDownloadWizardPage
(请注意,BaseName
参数TDownloadWizardPage.Add
仅接受文件名,而不是路径)。
但是您可以在下载文件后将文件复制到最终文件夹。
[Files]
Source: "{tmp}\downloaded-file.exe"; DestDir: "{app}"; flags: external
您当然需要在实际安装之前下载文件。因此,例如 from NextButtonClick(wpReady)
,官方CodeDownloadFiles.iss
示例的方式。
RenameFile
如果您需要在安装、使用或FileCopy
功能之前将文件移动到最终位置。复制显然更慢,但更可靠,因为您无法在磁盘/文件系统之间移动/重命名。如果移动失败,您可以尝试移动,然后退回到复制。
推荐阅读
- java - Is it possible to embed a Python/Django app in a Java Web App?
- amazon-web-services - Why should I combine SNS and Firebase GCM
- android - 如何在折叠工具栏布局中更改 scrim 侦听器中的位置?
- vba - date1 before (1/month(date1)+2/month(year1)) vba 访问
- android - 将数据插入本地存储失败
- postgresql - 如何将 Cdash 与 gitlab 内部 postgres 数据库连接
- spring-boot - 在 Jetty 线程中等待
- c# - 如何使用 Xamarin MvvmCross 获得代码覆盖率?
- sql - 来自 CSV 等文件的 BULK INSERT 的最大容量
- excel - Excel VBA - 查找A列中任何值的第一次出现,然后将B列的值插入C列(同一行)