[英]How to update an installed Windows service?
我用 C# 编写了一个 Windows 服务。
我已经在我的机器上安装了它,它运行得很好。
安装服务时, exe
被复制到某个地方? 还是指向我的bin
文件夹?
这是让我知道,当我不时更新我的代码时,我是否必须卸载并重新安装我的服务才能更新它?
如果您想自动更新您的服务,您可以使用诸如 Google Omaha 之类的框架。 这是 Google 用来更新 Chrome 的技术。 它适用于服务,因为它在后台静默运行,就像服务一样。 本文提供了有关使用 Omaha 自动更新服务的更多信息。
另一方面,如果您想手动更新您的服务:如果服务的位置没有改变并且其可执行文件的名称没有改变,则您不必卸载并重新安装它。 您可以简单地使用net stop
停止服务,使用新版本更新其可执行文件,然后使用net start
再次启动它。 这种方法对我来说可靠地工作了好几个月。
您可以通过从运行中打开 services.msc 来检查已安装服务的路径。 然后右键单击您的服务并查看“可执行文件的路径”。
如果这指向您的 bin 目录,那么每次编译成功时都会更新它。
您应该卸载旧的 windows 服务并安装新版本的 windows 服务。
卸载:
installutil /u yourproject.exe
安装:
installutil yourproject.exe
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.