【发布时间】:2019-03-05 19:18:38
【问题描述】:
很抱歉,如果这是重复的,但我无法通过 Google 找到我要查找的内容(主要是因为我不知道要问什么)。
tl;dr - 有没有办法让我的 C# VS Installer 项目在更新版本安装期间忽略任何版本控制错误或以前安装的丢失文件?
长版:我创建了一个包含 6 个文件(3 个程序、2 个服务和一个 DLL)的 C# 应用程序。我在 VS 中使用 MSI 部署项目来创建和分发这些文件、注册 DLL 并安装服务。当防病毒或恶意软件应用程序从系统中删除我的文件(和/或注册密钥、服务等)时,问题就开始了。为了安装我的应用程序的新版本,MSI 必须能够卸载旧版本。此时安装失败,因为文件或服务已被更改并且需要原始 MSI 包。找到原件可能会很棘手,因为我的客户通常不会保留它们。还有一些情况,当我不知道更好的时候,客户需要对可执行文件进行自定义更改。我只需更改文件并将其复制到用户安装文件夹即可。这进一步激怒了 MSI 众神,因为文件版本现在与安装程序放在那里的文件版本不同。如何轻松删除旧版本的应用程序并安装新版本?我正在计划进行一次重大修订,并且预计会有超过一百次左右的安装会让人头疼。将来我还可以/应该考虑什么来避免这些问题?我没有理解什么?
【问题讨论】:
标签: c# .net visual-studio windows-installer installation