Scripting Inno安装程序-文件副本

Scripting Inno安装程序-文件副本,scripting,installation,inno-setup,Scripting,Installation,Inno Setup,我正在使用InnoTools Downloader的Inno安装程序,下载完成后,我想将下载的文件复制到所选目录 if CurStep=ssPostInstall then begin FileCopy('Test.exe', ExpandConstant('{app}\Test.exe'), False); 它什么也不做,但是如果我重新启动安装程序,然后再次安装到同一个文件夹,那么它就可以复制文件了。怎么可能,或者我做错了什么?如果我只是这样做,那么它每次都能正常工作: if C

我正在使用InnoTools Downloader的Inno安装程序,下载完成后,我想将下载的文件复制到所选目录

 if CurStep=ssPostInstall then begin
    FileCopy('Test.exe', ExpandConstant('{app}\Test.exe'), False);
它什么也不做,但是如果我重新启动安装程序,然后再次安装到同一个文件夹,那么它就可以复制文件了。怎么可能,或者我做错了什么?如果我只是这样做,那么它每次都能正常工作:

 if CurStep=ssPostInstall then begin
    FileCopy('Test.exe', 'Test1.exe', False);

我使用
{src}
常量解决了这个问题:

//添加文件
itd_addfile('http://test.com/Test.exe,ExpandConstant({src}\Test.exe');
//下载完成后复制文件
FileCopy(ExpandConstant({src}\Test.exe')、ExpandConstant({app}\Test.exe')、False);
//删除旧文件
DeleteFile(ExpandConstant({src}\Test.exe');

还指定第一个参数(
ExistingFile
)的完整路径。为它提供下载文件的完整路径。否则,您希望将源文件放在当前目录中(例如通过
GetCurrentDir
函数返回的路径)。感谢您的快速回答,但是您能否告诉我如何将文件直接下载到所选目录?我在这一部分将文件添加到下载程序:InitializeWizard,但是我不能在这里使用{app},因为它还没有初始化。选择路径后的代码部分在哪里?