2010-01-13 79 views
2

用Inno Setup創建的安裝程序可以通過/ LOADINF選項讀取INI文件。是否可以通過這個INI文件讀取自定義變量?是否有一個函數可以獲得使用此選項給出的INI文件的名稱? (然後可以使用INI實用程序功能。)如何在Inno Setup中讀取INF文件中的自定義值?

回答

1

我們只需使用ParamStr(i)函數迭代命令行參數,然後查找以「/LOADINF=」開頭的參數,然後從那裏提取文件名。

最初得到我們的一個問題是,文件名可能是相對路徑描述符(例如,只是文件名)。但是,如果使用壓縮,那麼當前工作目錄將成爲%TEMP%文件夾中的某個子文件夾,而不是您的setup.exe所在的目錄。因此,您應該確保檢測到這一點,並在必要時預先給定AddBackslash(ExpandConstant('{src}'))的文件名。

+0

ü應該把一個例子......對於誰不知道太多關於這個人。 – Dielo 2013-03-05 13:31:34

2

代碼

ExpandConstant('{param:LoadInf}') 

從命令行參數提供文件INI文件名。

如果使用INF文件在安裝文件夾此代碼

AddBackslash(ExpandConstant('{src}')) + ExpandConstant('{param:LoadInf}');