2017-08-10 45 views
0

在升級過程中是否有恆定/安裝程序變量/函數可用於查找目的地位置? 我檢查了How do you find the user-selected install path in Inno Setup?,但WizardDirValue()以及ExpandConstant('{app}')在升級過程中使用時都會引發異常。據我所知,可以讀取卸載註冊表項下的Inno Setup: App Path密鑰以在升級期間查找位置。想要了解是否有其他選擇?試圖使用WizardForm.DirEdit.Text也引發異常如何在升級過程中查找目的地位置

+0

在升級過程中'WizardDirValue'或'app'常數不會引發異常。他們可能會在特定情況下拋出異常。你必須告訴我們你是如何使用它們的。 –

回答

1

在事件功能UpdateReadyMemo常量應用程序是可訪問的。

function UpdateReadyMemo(Space, NewLine, MemoUserInfoInfo, MemoDirInfo, MemoTypeInfo, MemoComponentsInfo, MemoGroupInfo, MemoTasksInfo: String): String; 
var 
    s: String; 
begin 
    s := ExpandConstant('{app}'); 
    MsgBox(s, mbInformation, MB_OK); 
    Result := MemoComponentsInfo 
end; 

UpdateReadyMemo會在準備好安裝對話框之前自動調用。其返回值將顯示在此對話框中。

+0

啊....我在嘗試問題之前嘗試了'ExpandConstant('{app}')',但沒有意識到我在代碼升級期間也從wpSelectDir頁面訪問了另一個控件,並且它在升級案例跳過頁面。 – Anand

+0

如果跳過wpSelectDir,使用'{app}'沒有任何問題,但只有在顯示'wpSelectDir'或其NextButtonClick(即使跳過時仍然會被調用)之後,您仍然可以嚴格執行此操作。 。 – Miral

相關問題