2014-02-18 67 views
2

除了使用InstallUtil卸载并重新安装以外,是否有更好的更新.Net Windows服务的方式?注意 - 我将以编程方式执行此操作。更新.Net Windows服务

回答

2

我成功地经历了这一点:

  • 停止服务
  • 使用文件副本
  • 重新启动该服务替换被新的旧的EXE,DLL和东西

它工作得很好,除非你的服务名称(或EXE文件名)已经改变:那么你将不得不卸载它并重新安装它。

我没有使用强名称和GAC功能,并且我不知道在这种情况下是否适用限制。

+0

谢谢,我不确定我是否能够做到这一点。 – tier1

1

一般来说,我同意Larry的回答,但您必须检查服务安装过程的具体情况,因为它可能不仅仅是注册服务。例如,如果您正在使用安装程序来安装性能计数器,WMI工具,仪器清单,设置注册表项,设置配置文件等,则在更新安装的服务时需要考虑这些因素,如好。

+0

幸运的是,我的安装程序非常简单。 – tier1

1

您可以使用Windows Installer免费获得所有这些信息。 ServiceControl table具有用于在安装/升级期间启动和停止服务的标志。基本上,一旦你创建了你的安装程序,你就可以运行它进行升级,并且所有的事情都为你照顾。

+0

这很有趣。我一定会深入研究这一点。 – tier1