2013-10-18 194 views
0

我知道您可以升級版本,刪除舊的安裝並安裝新版本。
我知道你也可以在同一臺機器上支持兩個相同軟件的安裝。wix安裝程序 - 支持同時升級和多個安裝

是否有創建GUI安裝的方法,讓用戶選擇是否要升級或保留舊版本,並在舊版本中安裝新實例?

回答

3

是的,但並不簡單。

基本上你從兩個升級表條目開始。一個是假的,永遠不會檢測到一個產品,一個檢測到您的以前的版本,但設置了DetectOnly屬性。

接下來,您需要創建一個帶單選按鈕的自定義對話框(安裝新的,升級現有的)和列表框以包含以前檢測到的產品的條目。您將使用自定義操作來使用臨時行填充ListBox表,以反映以前要升級的符合條件的產品。

如果用戶選擇安裝新,您只需繼續。如果他們選擇升級,則從「僅檢測升級」操作屬性中解析出產品代碼,並將它們放入「假」操作屬性中。現在刪除現有的產品將有東西要刪除。

他們是你想要提出和實施的各種業務規則,涵蓋無聲安裝故事,也有一種突變INSTALLDIR的方式,以便產品可以並排。

這是基本的模式,但你必須拿出所有的細節。我已經做了好幾次,結果非常好。

+0

這真的很奇怪,我們必須做這樣的事情來從安裝程序得到一個不是非常罕見的行爲。 – Gilad

+1

這實際上是一種非常不尋常的行爲。大多數產品並排安裝(思考Visual Studio)或者升級到位。很少有產品在安裝過程中將此決定推遲給用戶。 –

+0

我想看看如果你不介意我可以得到其他答案。我正在試着對我們說話時的建議進行編程。如果它適合我​​,我會很快接受它。 – Gilad