设置、显示、移除服务启动依赖关系
说白了就是一个启动项的设置问题,
1.服务肯定是优先在登录前后就启动完毕的
2.系统登录后先启动的是userinit和explorer
3.再后才是hkcu和hklm下的run项
4.最后才是启动菜单
网络和数据库服务,数据库服务既是服务肯定启动时机较早了,但网络的连接是在explorer加载后执行的事
一般的解决办法是直接放启动菜单不就行了,
否则直接一个批处理放run项启动,这个批处理先不停检测网络的连接性,直接网络连接成功才调用对应程序即可
有的时候我们需要启动一个软件,但是这个软件依赖于另外一个服务。
这个时候我们就需要设置服务依赖关系来处理了。
cmd 命令行方式如下
sc config "服务名称" depend="依赖的服务名称"
比如
sc config "server A" depend= "server B"
如果执行成功则会提示,需要注意的是等号和"server B"之间必须要有空格。
ChangeServiceConfig 成功
这样服务器启动时,等Server B启动成功了,才会去启动Server A。
如果想要把服务依赖关系移除。
可以使用下面的命令。
sc config "server A" depend= ""
显示某个服务被哪些依赖
sc EnumDepend A
这里将会显示A服务被哪些服务依赖