Inno setup Inno安装程序:检查组件是否以前下载过

Inno setup Inno安装程序:检查组件是否以前下载过,inno-setup,Inno Setup,我不知道,如果,我想要的是什么,这是可能的,但无论如何,我来了: 我有以下使用Inno下载插件的代码: 过程CurPageChanged(CurPageID:Integer); 开始 如果CurPageID=wpReady,则 开始 idpClearFiles; 如果选择了IsComponentSelected('src'),则 开始 idpAddFile( 'https://cool-opensource-project.googlecode.com/files/prj-sources-1.2

我不知道,如果,我想要的是什么,这是可能的,但无论如何,我来了:

我有以下使用Inno下载插件的代码:

过程CurPageChanged(CurPageID:Integer);
开始
如果CurPageID=wpReady,则
开始
idpClearFiles;
如果选择了IsComponentSelected('src'),则
开始
idpAddFile(
'https://cool-opensource-project.googlecode.com/files/prj-sources-1.2.3.zip',
ExpandConstant({tmp}\src.zip');
结束;
结束;
结束;
我想检查一下,在再次下载之前,文件是否已经下载到文件夹中,如果没有,请下载


高级版谢谢。

您可以通过该函数检查文件是否存在。在您的情况下,它将类似于:

过程CurPageChanged(CurPageID:Integer);
变量
文件名:字符串;
开始
如果CurPageID=wpReady,则
开始
idpClearFiles;
{最好使用局部变量以避免将同一路径扩展两次}
文件名:=ExpandConstant('{tmp}\src.zip');
{如果已检查组件项,但文件尚不存在,请将其排入队列}
如果IsComponentSelected('src')且不存在文件(FileName),则
开始
idpAddFile(
'https://cool-opensource-project.googlecode.com/files/prj-sources-1.2.3.zip',
文件名);
结束;
结束;
结束;

太棒了!它工作得很好!非常感谢您所做的一切,以及您的快速回复。