C# .net windows服务启动多个服务 ServiceBase

Posted study_well_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# .net windows服务启动多个服务 ServiceBase相关的知识,希望对你有一定的参考价值。

在windows服务中想要启动多个服务

 ServiceBase[] ServicesToRun;
      
            ServicesToRun = new ServiceBase[]
            {
               //              
                new SyncService(),
                new DataMoveService(),
            };
            ServiceBase.Run(ServicesToRun);

  但是发现每次都只启动了数组中的第一个服务,其他服务的onstart方法都没有执行,

查找资料后发现,问题有两个

1.需要在ProjectInstaller中没有添加安装项(PS:安装项的name必须不相同)

2.在安装批处理文件中添加多个服务的启动

Net Start SyncService
sc config SyncService start= auto
Net Start DataMoveService
sc config DataMoveService start= auto

  这样就能在windows服务中启动多个小服务了

 

以上是关于C# .net windows服务启动多个服务 ServiceBase的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Windows 服务 C# 取消关机

c#写windows服务

无法从Windows服务中托管的Asp.net核心网站启动多个Serilog接收器

Windows Serivce服务实现过程和打包安装

如何在基于 C# 的 Windows 服务中处理以不同时间间隔并行运行的多个任务?

c# 在内存打包zip 多个文件 上传服务器 MemoryStream ZipArchiveMode