当前位置: 首页 > 图文教程 > 操作系统 > Windows > 改变Windows服务的启动顺序

Windows
Windows Server 2008下高效域管理体验
Windows Server 2008 core管理与配置
Windows PowerShell不一样的系统管理体验
活动目录迁移需要的步骤
给Windows Server 2008设一个简单密码
部署NAP For DHCP 限制非法客户端
Windows Remote Shell(WinRM)使用介绍
微软新品Windows Server 2008 Foundation详情
Windows Server Core 网络的基本配置
Windows Server core的便捷操作和远程管理
Vista和Server08 SP2 RTM-Escrow发放给测试者
slmgr.vbs介绍与VA2.0部署
通过Windows Server终端服务实现远程管理
深入Windows Server 2008的自我监控
群集共享卷文件(CSV)四种模式的区别
Windows Server 2008 R2热添加删除虚拟存诸
部署基于Windows 2008防火墙策略提升域安全
调整服务 解决Windows Server 2008疑难病症
Windows Server 2008 R2的八大优势
Windows Server 2008禁止模块安装提升网络性能

改变Windows服务的启动顺序


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 42 ::
收藏到网摘: n/a

 

  要改变Windows服务的启动顺序,只要修改Windows的注册表就可 以了。任何Windows服务的注册信息可以在注册表的HKEY_LOCAL_MACHINE\
SYSTEM\CurrentControlSet\Services\<Service Name>\键下找到。下面就介绍几个与服务启动顺序相关的服务的值:

  Group值:一个REG_SZ类型的值。它用来描述服务属于那一个服务组。如果服务没有这一项,那么它不属于任何一个服务组,系统则会默认的将其在所有的服务启动后加载。

  Tag值:一个REG_DWORD类型的值。它用来描述服务的标识。每一个在服务组中的服务都会被分配一个唯一的标识。注册表通过对服务组的服务标识的排列来安排,同一服务组中的个服务的加载先后顺序。

  那么,如何改变服务的启动顺序,现在就被分为了两个步骤,一是:改变服务组的启动顺序。二是:改变服务组中各服务的启动顺序。

  先来介绍第一步:注册表的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder键的List值中保存了表示服务组启动顺序的信息。每一个服务组都是一个字符串,通过字符串在值中排列的先后位置表示服务组被加载的先后顺序。要想改变服务组的加载顺序,只要改变它们的位置就可以了。方法:用Regedit32.exe(不是,Regedit.exe,因为,在这里双击List值后,只能看到十六进制的数据,不便于修改。)打开该值,这是一个字符编辑环境,改变里面的组的先后顺序,然后确定改动。服务组的启动顺序就搞定了。

  第二步:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GroupOrderList键下有各服务组中各服务启动顺序的信息。每个服务组信息都被保存为了一个REG_BINARY类型的值,如:Pointer Port 服务组的值为030000000200000001000000030000000。下面为了方便观察,我们把它处理为03000000 02000000 01000000 030000000 它表示Pointer Port 服务组有三个服务,TAG值为2的服务先加载,然后是TAG值为1的服务,最后是TAG值为3的服务加载(信息解读的顺序是从左到右)。要改变服务在组中的加载顺序,只要编辑这个二进制串就可以了。

  另外,我们还可以通过ChangeServiceConfig API或者sc.exe程序(Windows 2000 Resource Kit包中的工具)来改变服务的加载顺序。这里就不一一细说了。