2012-04-04 170 views
1

我有一個簡單的inno-setup腳本,它允許我的安裝程序根據Is64BitInstallMode值安裝我的程序的32位或64位版本。這很好,但我想給用戶選擇安裝32位版本,即使他們在64位Windows上。我希望在選擇應用程序安裝路徑之前做出選擇,以便可以根據自己的選擇默認選擇32位或64位程序文件文件夾。如果他們在32位窗口上,我也想完全避免這個問題。我一直在玩各種功能,但還沒有想辦法做到這一點。如果我不能輕鬆做到這一點,我只會做兩個單獨的安裝(我試圖決定什麼是最有意義的!)任何建議,非常感謝!允許用戶在64位窗口上安裝32位版本

回答

2

我沒有實際做過尚以下,但是這是我想嘗試:

  1. 你需要一個新的安裝程序頁面,允許用戶選擇32位或64位版本是否應安裝(此頁面只能在64位Windows上顯示)
  2. 您需要一個變量來保存用戶選擇的「比特性」指示符。它應該在32位系統上初始化爲32位,在64位系統上初始化爲64位,具體取決於Is64BitInstallMode
  3. 1.中的頁面完成後,您應該更新2中創建的變量,其值反映了用戶的選擇。
  4. 爲32位和64位版本的文件添加到安裝程序
  5. 添加返回true如果要安裝64位版本的新功能(如Install64BitVersion
  6. 添加如果32位版本,返回true新功能應安裝(例如Install32BitVersion
  7. 變化在Files部的File的條目被有條件地安裝:

這是一個EXA mple爲Files部分:

[Files] 
Source: 32bitexe.exe; DestDir: {...}; Check: Install32BitVersion 
Source: 64bitexe.exe; DestDir: {...}; Check: Install64BitVersion 
+0

謝謝,我看到你關於製作自定義頁面另一個答案,所以我會用自定義頁面思想實驗。在顯示該頁面之前更改默認目標目錄的任何想法? – MarkF 2012-04-04 12:26:29

+0

其實,你應該考慮在*顯示頁面後改變它*。我沒有提到它,因爲我不確定在32位應用程序安裝在64位程序文件文件夾下時是否出現問題。 – 2012-04-04 12:28:19

+0

我發現了另一個問題,通過修改代碼中的編輯字段來解決這個問題。我只是想改變初始默認值,我不想覆蓋用戶的選擇,因爲他們可能選擇不安裝在程序文件(任一版本)中。 – MarkF 2012-04-04 12:31:10

相關問題