2012-09-12 125 views
1

的情況中檢索舊版本號是:安裝項目+自定義操作:升級安裝

我有我的.NET應用程序,這是使用特殊的組件,定義了一些自定義操作,是創建一個安裝項目在安裝期間調用。如果機器上已安裝舊版本的應用程序,則安裝項目將設置爲檢測先前的安裝並進行自動升級。

我想要做的是在安裝過程中通過一些自定義操作來檢測我是否正在升級已安裝的版本 - 如果這是真的,從哪個版本升級(它可能是以前安裝的MSI軟件包的版本)。

我試圖在安裝(安裝,提交,卸載)過程中的各個階段進入調試器,並且在每種情況下,舊版本已從磁盤中刪除,所以我一直無法獲得odl exe,從它讀取程序集版本。

這樣的事情甚至可能嗎?或者在自定義操作被調用的時候已經太晚了?

回答

0

不幸的是,這是不可能的VS安裝項目直接

但你可以使用逆戟鯨的 - 重新安排在你DetectOldVersionCA「RemoveFiles」 或 - 最好的決定:加行具有相同UpgradeCode的'Upgrade'表,版本從VersionMin移動到VersionMax,並鍵入'ActionProperty'屬性名稱,如(OLDFOUND),如果發現舊版本的程序,將會設置該屬性。

相關問題