问题:
我制作了一个 Windows Service i VS2010 (C#) 和一个相应的 .msi 来安装和启动它。版本、产品代码、升级代码等设置正确。RemovePreviousVersions 设置为 true。工作正常。
现在我想做一个新版本的服务,我希望更新后的 .msi 来更新服务,而不需要用户先手动卸载旧服务。
我要做的是:
- 我更新了我的服务的源代码
- 在 .msi 项目中,我更改了版本号和 ProductCode(同时保持 UpgradeCode 不变)
- 我重建整个事情。
但是,当我之后启动更新的 .msi 时,它会失败并显示以下消息:“错误 1001 .... 服务的实例已经在运行”。
问题:
为什么在安装更新版本之前没有自动卸载服务?
我该怎么做才能让它发挥作用?