我正在創建一個Visual Studio安裝項目。我想從安裝我的組件的系統中卸載另一個組件。另一個組件是使用Visual Studio創建的我自己的安裝程序安裝的。VS安裝項目:安裝時卸載其他組件
目前,當我從組件的安裝操作中調用其他組件的卸載時,我收到錯誤代碼:1618 (another MSI already running)
。
任何人都可以建議我一種解決此問題的替代方法嗎?
我正在創建一個Visual Studio安裝項目。我想從安裝我的組件的系統中卸載另一個組件。另一個組件是使用Visual Studio創建的我自己的安裝程序安裝的。VS安裝項目:安裝時卸載其他組件
目前,當我從組件的安裝操作中調用其他組件的卸載時,我收到錯誤代碼:1618 (another MSI already running)
。
任何人都可以建議我一種解決此問題的替代方法嗎?
如果您不需要實際運行其他組件的卸載,則可以使用自定義操作來刪除您打算替換的文件/文件夾。
使用自定義操作會迫使您執行卸載程序爲您執行的所有清理操作。
難道你是在替換一些東西,或者你只是試圖卸載一些東西,因爲安裝完全不同的東西?
MSDN Custom Action Walkthrough
我也看到了菲爾·威爾遜已大有裨益的自定義操作幾篇文章:
Phil Wilson on Custom Actions
我想你可以通過在shell命令運行該程序的uninst.exe
而安裝程序啓動.....
我遇到了類似的問題,需要幾次安裝才能一起運行,並且無法找到以遞歸方式運行MsiExec的方法。我使用的解決方案是將安裝程序綁定到一個腳本,該腳本將運行MsiExec一次以安裝/卸載舊軟件包,然後再運行新安裝程序。客戶必須運行腳本進行安裝。
如果您找到更好的方法,請告訴我。
如果你需要一個答案,我花了一個賞金......? – 2012-10-05 12:06:30