如何在.NET中自动更新我的Windows服务?

时间:2010-03-10 13:33:50

标签: c# .net windows-services clickonce auto-update

我每周为我的Windows服务发布一些修改,我的用户必须手动更新它。我想在滚动我自己的自动更新组件,但我听说过ClickOnce,它似乎只适用于Windows Forms而不适用于Windows Services。我的案子有没有类似的解决方案?

如果我自己应该开发此功能,我应该:

  1. 停止服务,更换文件,启动服务?
    1. 卸载并安装新版本?
    2. 对于这两个选项我认为我需要管理员权限,这需要用户干预,所以它根本不是自动的,对吗?

1 个答案:

答案 0 :(得分:3)

您可以将服务简单地设为shell。每隔一段时间(每天一次?)通过查询Web服务器来检查新版本的服务。如果存在新版本,请让它卸载执行工作的实际程序集,下载并保存新程序集,然后重新启动。