Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2248357
  • 博文数量: 310
  • 博客积分: 6853
  • 博客等级: 准将
  • 技术积分: 2833
  • 用 户 组: 普通用户
  • 注册时间: 2005-08-04 16:41
文章分类

全部博文(310)

文章存档

2013年(17)

2012年(42)

2011年(76)

2010年(71)

2009年(99)

2007年(2)

2006年(1)

2005年(2)

分类: Windows平台

2013-02-21 10:20:02

今天有个网友在QQ群里问了一个这样的问题:
谁对微软的那个服务工具比较熟悉?我有一个程序,包含3个exe文件,我现在能把他们3个都做成后台自动服务方式,可是这3个进程的启动顺序有先后之分,我如何设置他们的启动顺序?
我知道用WINDOWS服务的依赖关系,可以实现这个功能。但我不会添加这个依赖服务,于是在网上找了一下,下面把我的研究成果供享一下。
第一种方法:添加注册表

如果你要为一个服务配置依赖的话,请打开注册表编辑器,然后按照以下的步骤打开,其中使你要延缓启动的服务名称:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

在 这个键值中,添加一个名字为DependOnService的REG_MULTI_SZ的值。然后,对DependOnService值来添加你要在此服 务之前启动的服务名。如果你不知道要指定哪些服务的话,你就指定Spooler或是Messenger服务,因为他们一般都比较后启动。

在你在设置服务依赖的时候,要注意不要建立循环依赖关系——两个服务互相依赖。这样的话会使得这两个服务都永远无法启动。

注意:在你对注册表进行编辑之前,请先备份注册表文件,如果注册表出错的话,你可对其进行恢复。

第二种方法:使用SC工具

要使用SC工具需要安装Windows Support Tools,WINDOWS2000自带的SC没有添加依赖服务的功能。所以你要使用XP或2003的Windows Support Tools功能。

例如给BITS服务添加的依赖服务是RPCSS和EVENTSYSTEM,可以使用如下命令:

sc config bits depend= rpcss/eventsystem

阅读(1507) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~