C#如何编写Windows服务(coach)

起因

这两天在写一个定时任务,在公司项目中,使用的是.Net Framework 4.0. 便想着在.Net Core是不是可以编写Windows服务,果真是可以的(2020-09-01)

1. 在.Net Framework中可以用installutil服务进行注册和卸载

//注册服务C:/Windows/Microsoft.NET/Framework/v4.0.30319/installutil -i E:/project/csharp/dotnetcore31/dotnet.core/qiufeng.service2/bin/Debug/qiufeng.service2.exe//卸载服务C:/Windows/Microsoft.NET/Framework/v4.0.30319/installutil /u E:/project/csharp/dotnetcore31/dotnet.core/qiufeng.service2/bin/Debug/qiufeng.service2.exe//启动服务net start Service1//关闭服务net stop Service1

2. 创建.Net Core控制台程序

在Nuget中,查找 System.ServiceProcess.ServiceController 进行安装.然后添加新项目

C#如何编写Windows服务(coach)

用.Net Core编写Windows 服务

namespace CoreService{ partial class Service1 : ServiceBase { public Service1() { InitializeComponent(); } protected override void OnStart(string[] args) { // TODO: 在此处添加代码以启动服务。 } protected override void OnStop() { // TODO: 在此处添加代码以执行停止服务所需的关闭操作。 } }}

static void Main(string[] args){ ServiceBase[] services = new ServiceBase[] { new Service1() //可以增加多个服务 }; ServiceBase.Run(services);}

3. .Net Core的windows服务注册和卸载

.Net Core中没有installutil工具.该怎么注册服务呢?

//使用管理员权限打开命令行工具,用powershell不可以,目前没发现哪里的问题 //sc create "xxx(服务名称)" binpath=xxx(服务所在的绝对路径) 注册服务sc create "qiufengservice" binpath=xxx //sc delete "xxx(服务名称)" 卸载服务#sc delete "qiufengservice"

在.Net 5(应该是)中可以通过依赖注入(内部还是在ServiceBase继续封装)的使用,更简单的是使用中间件.

个人能力有限,如果您发现有什么不对,请私信我

如果您觉得对您有用的话,可以点个赞或者加个关注,欢迎大家一起进行技术交流

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2024年5月1日 上午9:38
下一篇 2024年5月1日 上午9:50

相关推荐

  • 贝贝品呗丨这届年轻人太会了!写祝福语、开发小程序赚新年第一桶金

    三湘都市报·新湖南客户端全媒体记者 刘品贝 新年新气象,当你还沉浸在新年热闹放松的氛围里时,不少年轻人已经开启新一轮的赚钱模式。金钱豹头像、车窗祝福语、红包封面定制等等,这一系列东…

    科研百科 2023年4月13日
    82
  • 公司科研项目如何管理

    科研项目如何管理 科研项目的管理方式对于项目的成功至关重要。一个好的管理方式可以确保项目按时按质完成,并且获得预期的成果。本文将讨论如何有效地管理公司科研项目。 制定详细的项目计划…

    科研百科 2025年3月10日
    1
  • 电脑防火墙工具,Fort Firewall软件体验(防火墙电脑在哪)

    在体验各种软件的时候,有些特殊版本在使用过程中不需要联网,有的则是必须禁用网络来禁止版本更新检查和服务验证,有时候还需要通过改Hosts的方式来禁用特定的服务,还是有不少人能用上这…

    科研百科 2023年5月28日
    85
  • 如何使用Excel管理项目?(如何使用excel管理项目功能)

    如何使用Excel管理项目?(如何使用excel管理项目功能) 1. 什么是复杂问题? 复杂问题需要很多道工序,涉及到与多个人进行沟通,人的注意力没法持续关注,导致很容易忘掉很多重…

    科研百科 2024年3月25日
    63
  • 好的项目管理工具

    好的项目管理工具:让项目成功的关键因素 项目管理在商业和组织的日常生活中扮演着越来越重要的角色。一个高效的项目管理可以帮助组织更好地规划和管理项目,提高生产力和效率,降低风险,减少…

    科研百科 2024年7月27日
    27
  • 伦茨科技带你了解蓝牙App开发的流程(伦茨科技带你了解蓝牙app开发的流程是什么)

    随着移动互联网的快速发展,给我们的生活带来了越来越多的便利,蓝牙App的开发也越来越普及。那么,简单来说,蓝牙App软件的开发就是在手机上为蓝牙物理设备提供具有相关功能的App软件…

    科研百科 2024年5月1日
    49
  • 量子力学科研项目

    量子科研项目:探索宇宙深处的奥秘 量子科研项目是探索宇宙深处的奥秘的重要领域之一。量子力学是一种描述微观世界的理论,它揭示了微观粒子的性质和行为,使我们对物质世界的认识有了更深入的…

    科研百科 2025年4月26日
    0
  • 参与科研项目的情况

    参与科研项目是许多人梦寐以求的机会,不仅可以提高技能和知识,还可以为未来的职业生涯打下坚实的基础。在参与科研项目的过程中,我们不仅可以展示自己的才能和创造力,还可以与来自世界各地的…

    科研百科 2025年3月19日
    2
  • 华为科研经费

    华为科研经费:中国科技实力的崛起之路 近年来,华为公司的快速发展成为了全球科技界的焦点。作为中国最大的科技公司之一,华为在科研领域投入了大量的资金和资源,致力于推动技术创新和产业升…

    科研百科 2024年10月18日
    0
  • 建设项目跟踪管理系统

    建设项目跟踪管理系统 随着现代项目管理的日益复杂,建设项目跟踪管理系统已经成为了项目管理中不可或缺的一部分。一个好的建设项目跟踪管理系统不仅可以帮助项目经理更好地管理项目进度、预算…

    科研百科 2024年12月31日
    0