1

我有一个在系统上安装 Windows 服务的 msi 安装文件。现在每次我安装更新版本的设置时,我希望它首先完全卸载以前安装的版本,然后安装当前版本。我对这些配置很陌生,所以对此一无所知。

任何帮助将非常感激。

提前致谢!

4

1 回答 1

1

您必须确保当您在应用程序的第一个版本上运行卸载时,它确实使您的系统处于您期望的原始状态。不幸的是,根据您的设置和应用程序,无法自动保证完全卸载,因为您在用于安装应用程序的同一个 Windows Installer 程序包上运行了卸载。您需要彻底测试原始安装包,以确保卸载使用户的计算机处于干净状态。例如,如果您的应用程序必须注册,则必须编写安装包以在卸载应用程序时清理注册表。

如果您的安装包确实总是让用户的计算机处于干净状态,那么您可以通过使用带有 /uninstall 选项的标准命令行选项或 Windows Installer 之一来删除使用 Windows Installer 包安装的应用程序MsiInstallProduct等 API 。

如果您想在已安装的旧版本上安装较新版本的应用程序,最好开发一个更新包来更新应用程序。有几种类型的更新:小更新、次要升级和主要升级。请参阅文档中的修补和升级,以确定您需要向应用程序的用户提供哪种类型的更新包。

Windows Installer 的目的之一是支持这样的应用程序服务,其中可能存在共享组件和用户系统上的多个更新。这可能是一种更有弹性的维修方法,因为与拆除和更换的方法相比,它可能需要更少的用户计算机先验知识。

于 2012-10-25T21:05:34.227 回答