2014-03-18 89 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

您通常将安装源文件保存为常规代码文件。您可以对其进行更新,版本控制,并尽可能保持版本之间的相似性。这个设置文件的格式显然取决于你使用的工具。

轻视释放的过程:

  • 您自己创建一个释放区域,从第一 版本有转储文件,然后让你使用任何工具的安装程序。
  • 为您的应用的下一个版本 你做的一样,转储文件在发布区域,包括在你的安装任何新的 文件,在安装从您的安装程序删除删除的文件,更新的版本号,并作出重大升级脱离新版本,以便在安装新版本之前卸载旧版本。
  • 对于更多版本,您可以根据需要更新设置主要升级逻辑(或者通过自动构建过程自动进行此设置)并在设置中添加/删除文件和注册表设置。然后在干净和升级机器上彻底测试设置。

我不知道这是否回答你的问题,但让我们听听你的回复。