首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MSI安装问题

MSI安装问题
EN

Stack Overflow用户
提问于 2014-04-29 22:59:31
回答 2查看 105关注 0票数 1

我有一个MSI文件,它将一组dll从源文件夹复制到目标文件夹。在运行MSI时,dll被复制到目标文件夹,MSI也安装在系统中。我可以在添加或删除程序中看到这一点。

每当dll发生更改时,我都会复制新的dll并重新构建MSI。当我尝试在同一系统中运行MSI时,我得到了错误“另一个版本已经存在。卸载该版本并继续”之类的错误。

到目前为止,我正在做的是卸载旧的(MSI)并安装新的。

但我希望MSI用来自MSI的最新dll更新旧的dll,而不是卸载并重新安装。

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2014-04-30 00:22:18

您不能简单地重新运行MSI来进行更新。这里有一些背景知识,即使你没有使用Visual Studio设置,而且经过这么长时间后,它仍然是相关的:

https://www.simple-talk.com/dotnet/visual-studio/updates-to-setup-projects/

要替换单个文件,请构建一个补丁,即msp文件。要升级整个安装程序,包括Dll,然后使用WiX主升级元素,这可能比构建补丁容易得多,特别是如果你的安装很小,安装不需要很长时间。增加Dll的文件版本以确保其被替换。

票数 3
EN

Stack Overflow用户

发布于 2014-04-30 02:56:09

欢迎来到StackOverflow --这似乎是你的第一篇文章。如果我是你,我会阅读这篇文章,了解如何实现WIX的主要升级:How to implement WiX installer upgrade?。这是另一个线程(没有通读这个线程):How to get WiX major upgrade working?

主要升级本质上是自动卸载现有版本并重新安装新版本。这是Windows Installer中最不容易出错的更新机制。这是首先尝试的推荐方法--它效果很好。一个小的升级--即升级现有的安装,通常在一开始就很难做到。应用了许多技术限制。下面是一个很好的总结,说明了小升级所需的条件(以及其他细节):http://www.installsite.org/pages/en/msi/updates.htm

请查看this well known wix tutorial以获取升级和补丁。和MSDN

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23368316

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档