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

C# 如何在.NET中自动更新我的Windows服务?,c#,.net,windows-services,clickonce,auto-update,C#,.net,Windows Services,Clickonce,Auto Update,我每周为我的Windows服务发布几次修改,我的用户必须手动更新。我想推出自己的自动更新组件,但我听说了ClickOnce,它似乎只适合Windows窗体而不适合Windows服务。我的情况有类似的解决方案吗 如果我自己开发这个功能,我应该: 停止服务,替换文件,启动服务 或 是否卸载并安装新版本 对于这两个选项,我想我都需要管理员权限,这需要用户干预,所以它根本不是自动的,对吗?您可以让服务只是一个shell。每隔一段时间(每天一次?)让服务通过查询web服务器来检查新版本。如果存在新版本,让

我每周为我的Windows服务发布几次修改,我的用户必须手动更新。我想推出自己的自动更新组件,但我听说了ClickOnce,它似乎只适合Windows窗体而不适合Windows服务。我的情况有类似的解决方案吗

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

  • 停止服务,替换文件,启动服务
  • 是否卸载并安装新版本

  • 对于这两个选项,我想我都需要管理员权限,这需要用户干预,所以它根本不是自动的,对吗?

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