C# Windows服务依赖项注入

C# Windows服务依赖项注入,c#,.net,windows-services,C#,.net,Windows Services,有没有办法将一个“myWindowsService”与运行在同一台计算机上的另一个服务(如“SqlService”)建立依赖关系 问题是,如果您不知道将在其中安装“myWindowsService”的“sql服务”的名称,但我的服务取决于sql已在运行 thanx编辑: 没有正确阅读问题 解决方法(不是最优雅的解决方案)是根据已知实例名的已知白名单枚举所有服务 使用ManagementObject可以设置依赖项(但必须知道服务的名称): 如果您正在使用 sc create <servic

有没有办法将一个“myWindowsService”与运行在同一台计算机上的另一个服务(如“SqlService”)建立依赖关系

问题是,如果您不知道将在其中安装“myWindowsService”的“sql服务”的名称,但我的服务取决于sql已在运行

thanx编辑: 没有正确阅读问题

解决方法(不是最优雅的解决方案)是根据已知实例名的已知白名单枚举所有服务


使用ManagementObject可以设置依赖项(但必须知道服务的名称):

如果您正在使用

sc create <service>
sc创建
语法,您可以为此提供其他服务,这将使您安装的服务依赖于正在启动的服务

sc create <service> depend= mssqlserver
sc create depend=mssqlserver
如果使用ServiceInstaller类,也可以自动完成此操作。属性中有一个区域可供该控制器定义启动依赖项

我知道您说过您可能不知道其他服务的名称,但是更改依赖项也很简单

sc create <service> depend= mssqlserver