2014-03-18 122 views
2

我正在爲小型Windows應用程序工具使用MSI安裝程序。在添加更新的版本和創建MSI安裝程序時,我們必須卸載較舊的文件並安裝較新的版本。多個版本的dll文件的MSI安裝程序包

我應該如何處理版本安裝?持續集成部署方法如何工作?在每次安裝時,舊的dll將被刪除,並且新版本的dll被放置。

+0

您使用什麼工具創建安裝程序?如果是Installshield,Advanced Installer或類似的視圖,可以幫助您創建Phil在下面描述的「主要升級」。如果您使用WIX,則有線程描述瞭如何在此計算機上執行主要升級。我會用一些升級指針添加一個快速,一般的答案,但我們真的需要知道你用什麼工具來正確回答。 –

回答

2

有一些所謂的DLL隔離,爲Windows安裝程序,旨在讓你擺脫DLL地獄看看這個MSDN文章在,http://msdn.microsoft.com/en-us/library/aa369732(v=vs.85).aspx或者你可以使用的產品代碼升級代碼通過Windows安裝程序

+0

這是關於產品代碼的另一個鏈接http://blogs.msdn.com/b/pusu/archive/2009/06/10/understanding-msi.aspx – saj

+0

您提供的鏈接並不會討論版本控制和安裝較新的文件 – goofyui

+0

我的不好的是急於嘗試這個http://msdn.microsoft.com/en-us/library/aa372399(v=vs.85).aspx和這個http://wixtoolset.org/documentation/manual/v3/howtos/updates /major_upgrade.html – saj

1

升級如果您希望您的較新的MSI產品能夠卸載所有較舊的文件並安裝較新的文件,您需要進行重大升級,以便在安裝的早期對RemoveExistingProducts進行排序。這假定你只是想刪除所有的東西,就好像它是手動卸載,然後安裝新的。您需要在前三位數字中增加MSI的ProductVersion,並執行您的工具提供的任何其他功能來進行重大升級。

0

您通常將安裝源文件保存爲常規代碼文件。您可以對其進行更新,版本控制,並儘可能保持版本之間的相似性。這個設置文件的格式顯然取決於你使用的工具。

輕視釋放的過程:

  • 您自己創建一個釋放區域,從第一 版本有轉儲文件,然後讓你使用任何工具的安裝程序。
  • 爲您的應用的下一個版本 你做的一樣,轉儲文件在發佈區域,包括在你的安裝任何新的 文件,在安裝從您的安裝程序刪除刪除的文件,更新的版本號,並作出重大升級脫離新版本,以便在安裝新版本之前卸載舊版本。
  • 對於更多版本,您可以根據需要更新設置主要升級邏輯(或者通過自動構建過程自動進行此設置)並在設置中添加/刪除文件和註冊表設置。然後在乾淨和升級機器上徹底測試設置。

我不知道這是否回答你的問題,但讓我們聽聽你的回覆。