SC命令(windows服务开启/禁用)

         sc.exe命令功能列表:

1.更改服务的启动状态(这是比较有用的一个功能)

2.删除服务(除非对自己电脑的软、硬件所需的服务比较清楚,否则不建议删除任何系统服务,特别是基础服务)

3.停止或启动服务(功能上类似于net stop/start,但速度更快且能停止的服务更多)

具体的命令格式如下:

修改服务启动类型的命令行格式为(特别注意start=后面有一个空格)

  sc config 服务名称 start= demand(设置服务为手动启动)   

  sc config 服务名称 start= disabled(设置服务为禁用)

停止/启动服务的命令行格式为

sc stop/start 服务名称

注意:平时常接触的都是服务的显示名称,而以上所指是服务名称,都可以在控制面板->管理工具->服务里面,双击对应的服务来查询。

先举例说明一下具体的设置方法:

如设置远程注册表服务为手动其格式为

sc config RemoteRegistry start= demand

设为禁用的格式为:

sc config RemoteRegistry start= disabled

停止服务则格式为:

sc stop RemoteRegistry

首先把自己所需设置的服务名称查到之后,按照上面的格式做成批处理文件,重装系统之后只要运行批处理文件即可。

以下是我的设置,以XpSp2为蓝本,可比对所用的系统进行增删和修改。注:未加入XpSp2的自动更新、安全中心、防火墙。

sc config Alerter start= demand

sc config TrkWks start= demand

sc config helpsvc start= demand

sc config policyAgent start= demand

sc config dmserver start= demand

sc config WmdmpmSn start= demand

sc config Spooler start= demand

sc config RemoteRegistry start= demand

sc config NtmsSvc start= demand

sc config seclogon start= demand

sc config Schedule start= demand

sc config WebClient start= demand

sc config W32Time start= demand

sc config WZCSVC start= demand

sc config ERSvc start= demand

sc config Themes start= demand

sc config FastUserSwitchingCompatibility start= disabled

sc config Messenger start= disabled

sc config protectedStorage start= disabled

sc config SSDpSRV start= disabled

sc config TermService start= disabled

sc config ShellHWDetection start= disabled

如果需要立即关闭服务也可把以下代码跟在上面的代码之后

sc stop W32Time

sc stop ShellHWDetection

sc stop TrkWks

sc stop helpsvc

sc stop dmserver

sc stop policyAgent

sc stop Spooler

sc stop RemoteRegistry   ;远程修改注册表

sc stop seclogon

sc stop Schedule

sc stop WZCSVC

sc stop ERSvc

sc stop Themes

sc stop FastUserSwitchingCompatibility

sc stop protectedStorage

sc stop SSDpSRV

sc stop WebClient

最后把修改好之后的代码存为services.cmd,在以后进行服务设置时,直接运行事先保存好的批处理文件就可以做到事半功倍了。

看到这里,使用Win2000的朋友也不必失望,sc.exe这个命令行工具对Win2000同样适用,可从装有WinXp或者Win2003的机器里面拷贝sc.exe文件,与保存好的批处理文件放在一起,然后执行批处理文件即可。

对注册表比较熟悉的朋友可能会想到用注册表来设置服务的启动类型,这也是一种可行的方法,本身却有着内在不足。原因是服务启动类型在注册表中对应的键值较长且分散,进行整理不方便直观且易错漏,所以这种方法比较适用于无人值守的安装时使用。