.NET Windows服务 - 在一个项目中的多个服务(.NET Windows Service

2019-07-17 16:03发布

目前,我有一个Windows服务项目。 我还创造了另一个“安装项目”将安装Windows服务。

我的问题是:我可以添加其他Windows服务相同的项目? (这样一来,我可以使用1个安装程序,也更容易。共享服务之间的一些代码),如果我能做到,这是否意味着,当一个服务遇到错误,那么这两个服务被停止,或者他们报错了相互独立的?

是否有每个项目的编码1个服务,或在一个项目中有多个服务之间的任何其他方面的差异?

Answer 1:

是的,你可以在同一个项目中有多个服务。 虽然它们都使用相同的EXE,它们被加载到不同的存储空间和独立行动彼此的。



Answer 2:

我知道这已经回答了,但如果你想如何在同一个项目中运行两个服务的例子(代码),请看看我的回答类似的问题:

我可以在一个单一的Windows可执行文件托管多个服务 。

谢谢!



Answer 3:

我名为Daemoniq一个开源的Windows服务的托管框架的开发人员。 在一个进程中运行多个服务是其特色之一。 你可以从这里下载http://daemoniq.org

目前的功能包括:

  • 经由CommonServiceLocator容器不可知服务位置
  • 设置像通过的app.config服务名,显示名,描述和serviceStartMode公共服务属性
  • 在同一个进程中运行多个窗口服务
  • 通过设定的app.config恢复选项
  • 服务集通过的app.config依赖
  • 经由命令行组服务进程凭据
  • 通过命令行安装,卸载,调试服务

谢谢!



文章来源: .NET Windows Service - multiple services in one project