2016-05-24 24 views
0

我想安裝一個外部文件。從子目錄安裝外部文件(相對路徑)

我的安裝程序位於

c:\somedir\setup.exe 

和外部文件位於

c:\somedir\download\MyApp.exe 

我的代碼,這樣做是

[Files] 
Source:"\download\MyApp.exe"; DestDir: "{app}";Flags: external skipifsourcedoesntexist 

出於某種原因,Inno Setup的不似乎沒有找到這個文件。

有人可以告訴我我做錯了什麼嗎?

謝謝。

回答

1

你有兩個問題:

  • 路徑\download\MyApp.exe相對於c:\somedir\解析爲c:\download\MyApp.exe爲龍頭\追溯到根文件夾。您需要使用download\MyApp.exe

  • 無論如何,Inno Setup不會解析相對於安裝程序的外部文件路徑。你必須使用的完整路徑,請參閱Source parameter的文檔:

    當指定標誌externalSource必須分發媒體或上全路徑名的現有文件的(或通配符)用戶的系統(例如「{src} \ license.ini」)。

    您可以使用{src} constant獲取安裝程序文件夾的完整路徑。


[Files] 
Source: "{src}\download\MyApp.exe"; DestDir: "{app}"; Flags: external skipifsourcedoesntexist 
1

使用{src}字符串常量:

[Files] 
Source:"{src}\download\MyApp.exe"; DestDir: "{app}";Flags: external skipifsourcedoesntexist