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

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

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

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

  1. 停止服务,替换文件,启动服务?

  1. 卸载并安装新版本?

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

最佳答案

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

关于c# - 如何在 .NET 中自动更新我的 Windows 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2417202/

相关文章:

c# - 将转义字符串转换为字节数组或流; C#

c# - 在 ASP.NET MVC 中的何处存储自定义类?

.net - 如何使用Case感测参数

c# - 开发人员是否可以通过 "force"系统来防止 "Metro"应用程序在后台异步进程运行时被挂起?

c# - Windows 服务 : OnPowerEvent doesn't fire

c# - Visual Studio 2017 和 MySQL EntityFramework

c# - 如何找出两条折线是否相交

c# - 如何使用实现旧版本接口(interface)的对象,方法更少

C# - 在声明中设置初始值的缺点

c# - Windows 服务跟踪调试消息