我希望为我的多项目解决方案实现一个安装包,它可以安装Windows服务和Winforms应用程序。该服务和应用程序都能够通过我编写的基于web的自定义实用程序进行自我更新。因此,基本上,如果Windows服务在web服务器上看到升级,它会定期更新自己的DLL。如果Winforms应用程序在启动时看到the服务器上的升级,它将自动更新。它不使用标准的安装程序升级过程,但基本上是在.DLL被使用之前替换掉它们。
如果我从项目中手动升级几个DLL,我知道如何使Windows不修复我的安装(使用NOT REINSTALL标志)。但是,如果我允许不修复某些文件,当用户手动升级或修复其安装时,我会遇到无法卸载或升级这些文件问题。
所以,我需要的是:
1) Windows不尝试修复手动升级的.DLL自动没有明确的用户请求2) Windows卸载所有内容,包括自升级的.DLL-当用户选择卸载时3)如果用户选择手动修复安装,Windows将修复所有内容
这个是可能的吗?我唯一的选择是在卸载过程中实现手动清除.DLL的自定义操作吗?
谢谢
发布于 2010-11-19 17:49:00
WiX为您提供了对安装过程的大量控制,而this question (希望如此)描述了如何让WiX删除在初始安装后添加的文件。只要你没有创建带有更新的新目录,看起来你就不需要任何自定义操作。
https://stackoverflow.com/questions/3884721
复制相似问题