2017-04-21 50 views
0

如果URL不存在或沒有互聯網連接,如何自動跳過下載......? 在此先感謝&歡呼聲...... ;-)Inno下載插件:如果不存在,跳過下載...?

[Code] 
procedure InitializeWizard(); 
begin 
    idpAddFile('http://127.0.0.1/test1.zip', ExpandConstant('{tmp}\test1.zip')); 
    idpDownloadAfter(wpReady); 
end; 

回答

1

參考的創新科技下載插件documentation我認爲最好的方式是嘗試檢查URL /文件是否存在,如果它不把它添加到下載列表。根據文檔,idpGetFileSize獲取url中給出的文件的大小,如果能夠無誤地計算文件大小,則返回true。試試這個...

[Code] 
procedure InitializeWizard(); 
var 
    size: Int64; 
begin 
    if idpGetFileSize('http://127.0.0.1/test1.zip', size) then 
     idpAddFile('http://127.0.0.1/test1.zip', ExpandConstant('{tmp}\test1.zip')); 
    idpDownloadAfter(wpReady); 
end; 
+0

運行完美...謝謝這麼多...!問候... ;-) – alfreire

+0

不客氣;) – Sam

-1

展望下載插件documentation我發現這個選項也工作:

[Code] 
 
procedure InitializeWizard(); 
 
begin 
 
    idpSetOption('ErrorDialog', 'none'); 
 
    idpAddFile('http://127.0.0.1/test1.zip', ExpandConstant('{tmp}\test1.zip')); 
 
    idpDownloadAfter(wpReady); 
 
end;

+0

很酷。使用最適合您的用例的那個;) – Sam

+0

您將以這種方式隱藏任何錯誤。看起來對我來說是一個糟糕的解決方案。 @山姆的解決方案是正確的。 –