澳门新浦京娱乐场网站-www.146.net-新浦京娱乐场官网
做最好的网站

极度指令之SC命令详解,Service的官方描述

参考网站:

CMD命令讲解(一)SC,cmd命令讲解sc

参考网站:

备注:网站内容是翻译得来,源网站在上面

 

与服务控制器和已安装的服务进行通信。exe检索和设置关于服务的控制信息。您可以使用sc.exe来测试和调试服务程序。存储在注册表中的服务属性可以设置为控制如何在启动时启动服务应用程序,并作为后台进程运行。exe参数可以配置特定的服务,检索服务的当前状态,以及停止和启动服务。您可以创建调用各种sc.exe命令的批处理文件,以自动化启动或关闭服务的顺序。exe提供类似于控制面板中的管理工具项中的服务的功能。

对于命令语法,请单击下面的任何一个sc命令:

sc boot

表示最后一个引导是否应该被保存为最后一个良好的配置。

How to create a Windows service by using Sc.exe

  • Email
  • Print

Support for Windows XP has ended

Microsoft ended support for Windows XP on April 8, 2014. This change has affected your software updates and security options. Learn what this means for you and how to stay protected.

Support for Windows Server 2003 ended on July 14, 2015

Microsoft ended support for Windows Server 2003 on July 14, 2015. This change has affected your software updates and security options. Learn what this means for you and how to stay protected.

This article was previously published under Q251192

特殊指令之SC命令详解

澳门新浦京娱乐场网站 1


备注:网站内容是翻译得来,源网站在上面

Syntax

sc [ServerNameboot [{bad|OK}]

SUMMARY

To remotely create and start a service from the command line, you can use the SC tool (Sc.exe) included in the Resource Kit. 

Although you can use the Netsvc.exe and Instsrv.exe tools to start a service on a remote computer, these tools do not give you the ability to remotely create a service. 

Note The Srvinstw.exe tool is the graphical user interface (GUI) version used to create remote services. Srvinstw.exe is not a command-line tool.

DOS脚本梳理已发布文章 :


SC命令是XP系统中功能强大的DOS命令,SC命令能与“服务控制器”和已安装设备进行通讯。

声明一下: 小编是从微软官网上查的资料(), 只是通过自己的理解进行测试并插入小编的测试截图, 希望对大家有用

Win7及其以上版本当然也能用

SC命令主要的几个功能:

1. 更改服务的启动状态(这是比较有用的一个功能) ,可以设置存储在注册表中的服务属性,以控制如何在启动时启动服务应用程序,以及如何将其作为后台程序运行。即更改服务的启动状态  

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

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

  1. SC可以 检索和设置有关服务的控制信息。可以使用 SC.exe 来测试和调试服务程序

5. 可以创建批处理文件来调用不同的 SC 命令,以自动启动或关闭服务序列。

说白了: SC.exe提供的功能类似于“控制面板”中“管理工具”项中的“服务”


获取SC的帮助文档 : 

在 cmd 窗口中执行 SC 命令即可获取其帮助文档内容, 从帮助文档中可以看到, SC下面还有很多个子命令, 所以, 除 SC Query 外, 其它命令的帮助文档的获取方式, 就是在CMD中执行 SC 子命令名 就可以获取到.

值得注意的一点: 因为SC命令操作的是系统服务, 所以最好在管理员权限下操作.

澳门新浦京娱乐场网站 2

SC命令帮助


语法体: sc <ServerName> [command] [service name] <option1> <option2>...

 

Parameters

ServerName   指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

[{ bad | OK }] :指定最后一个引导是坏的还是应该作为最后一个好的引导配置来保存。

/ ?在命令提示符中显示帮助。

MORE INFORMATION

You can use Sc.exe to help develop services for Windows. Sc.exe, which is provided in the Resource Kit, implements calls to all of the Windows service control application programming interface (API) functions. You can set the parameters to these functions by specifying them on the command line. Sc.exe also displays service status and retrieves the values stored in the status structure fields. The tool also lets you specify the name of a remote computer so that you can call the service API functions or view the service status structures on the remote computer. 

Sc.exe also allows you to call any of the service control API functions and vary any of the parameters from the command line. The advantage to this is that it provides a convenient way to create or configure the service information in the registry and the Service Control Manager database. You do not have to configure the service by manually creating entries in the registry and then restarting the computer to force the Service Control Manager to update its database. 

Sc.exe uses the following syntax: 

Syntax1 (use Syntax1 to run Sc.exe)

sc [Servername] Command Servicename [Optionname= Optionvalue...]

Syntax2 (use Syntax2 to display help information, except for the query command)

sc [Command]

命令行语法键

下表描述了用于指示命令行语法的标记。

表示法 说明

不带方括号或大括号的文本

您必须键入如下所示的项目

< 尖括号内的文本 >

您必须为其提供值的占位符

[方括号内的文本]

可选的项目

{大括号内的文本}

一组所需的项目。选择一个

竖线 (|)

互斥项 ; 的分隔符选择一个

省略号 (…)

可重复的项目

ServerName: 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”),无此参数则默认为本地.

[command]: SC的子命令

[service name]: 服务名称(不一定是显示的名称)

澳门新浦京娱乐场网站 3

澳门新浦京娱乐场网站 4

澳门新浦京娱乐场网站 5

SC命令不能单独使用,必须和其它的命令结合起来一起使用。

注意注意再注意: 每个参数项=号后面必须有一个空格, 再接参数值. 如: sc query type= driver type= interact


声明: 小编是一个个的去写的实例, 不敢误导众友人, 大多理论文本来自微软官方, 我是边理解边实验, 不懂的地方也有标注. 由于涉及对微软系统更加深入了点, 命令及参数以小编的水平是稍复杂.

至于条友们是否能看的下去, 嘿嘿 ,感觉肯定收藏的占9成.


(1) sc lock -----锁定“服务控制管理器”的数据库。

语法

sc [ServerName] lock

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • /?

  • 在命令提示符下显示帮助。

备注

  • 锁定“服务控制管理器”的数据库会阻止启动任何服务。如果要确保服务在停止之后不会启动,请使用这个命令。这可以使您不受干扰地进行一些操作(例如,删除服务)。

  • 使用 lock 操作锁定“服务控制管理器”的数据库,然后通过键入 u 来使数据库解锁。也可停止锁定数据库的进程。

澳门新浦京娱乐场网站 6

sc lock操作演示

(2) sc querylock -----查询和显示“服务控制管理器”数据库的锁定信息。

澳门新浦京娱乐场网站 7

sc querylock 信息中几个参数的意思

澳门新浦京娱乐场网站 8

解锁后的状态信息


(3) sc query-----------查询服务的状态(当前本机所有的服务状态信息),或枚举服务类型的状态。

获得和显示关于指定的服务、驱动程序、服务类型或驱动程序类型的信息

语法(此类内容看不懂就往下滑, 可以看实例演示)

Sc [ServerName] query [ServiceName] [type= {driver | service | all}] [type= {own | share | interact | kernel | filesys | rec | adapt}] [state={active | inactive | all}] [bufsize= BufferSize] [ri= ResumeIndex] [group= GroupName]

下表描述了用于指示命令行语法的标记。

表示法 说明

不带方括号或大括号的文本

您必须键入如下所示的项目

< 尖括号内的文本 >

您必须为其提供值的占位符

[方括号内的文本]

可选的项目

{大括号内的文本}

一组所需的项目。选择一个

竖线 (|)

互斥项 ; 的分隔符选择一个

省略号 (…)

可重复的项目

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。如果要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。此 query 参数不与其他的 query 参数结合使用(除了 ServerName)。

  • type= {driver | service | all}

  • 指定需要枚举的内容。默认类型为 service。

    描述

    driver

    指定仅枚举驱动程序。

    service

    指定仅枚举服务。

    all

    指定同时枚举驱动程序和服务。

  • type= {own | share | interact | kernel | filesys | rec | adapt}

  • 指定要枚举的服务类型或驱动程序类型。

    描述

    own

    服务以其自身的进程运行。不与其他服务共享可执行文件。这是默认值。

    share

    服务作为共享进程运行。与其他服务共享可执行文件。

    interact

    服务可以与桌面交互,接收用户的输入。交互服务必须在 LocalSystem 帐户下运行。

    kernel

    驱动程序。

    filesys

    文件系统驱动程序。

  • state= {active | inactive | all}

  • 指定要枚举的服务的已开始状态。默认状态是 active。

    描述

    active

    指定所有的活动服务。

    inactive

    指定所有暂停或停止的服务。

    all

    指定所有服务。

  • bufsize= BufferSize

  • 以字节为单位指定枚举缓冲区的大小。默认大小为 1024 字节。当从查询返回的显示结果超过 1024 个字节时,增加枚举缓冲区的大小。

  • ri= ResumeIndex

  • 指定开始或继续枚举的索引号。默认值为 0。 在查询返回的信息超过默认缓冲区能够显示的大小时,请与 bufsize= 参数结合使用这个参数。

  • group= GroupName

  • 指定要枚举的服务组。默认设置为所有组。

  • /?

  • 在命令提示符下显示帮助。

备注

  • 如果参数及其值之间没有空格,(例如,是 type= own,而不是 type=own),则操作会失败。

  • query 操作可以显示有关服务的下列信息:SERVICE_NAME(服务的注册表子项名)、TYPE、STATE(以及不可用的状态)、WIN32_EXIT_B、SERVICE_EXIT_B、CHECKPOINT 和 WAIT_HINT。

  • 在某些情况下,type= 参数可以使用两次。type= 参数的第一次出现指定是否查询服务、驱动器或所有这些项。type= 参数的第二次出现指定一个由 create 操作进一步缩小查询范围的类型。

  • 当 query 命令的显示结果超过了枚举缓冲区的大小时,显示类似于以下内容的消息:

    Enum: more data, need 1822 bytes start resume at index 79

    要显示剩余的 query 信息,请重新运行 query,将 bufsize= 设置为所需的字节数,并将 ri= 设置为指定的索引。例如,在命令行键入下面的指令会显示剩余的输出:

    sc query bufsize= 1822 ri= 79

澳门新浦京娱乐场网站 9

SC Query 获取本机或远程主机的所有服务的状态信息

SERVICE_NAME: 服务名称(可用于服务操作)

DISPLAY_NAME: 服务对外显示名称(可自定义, 但不能用于操作服务)

TYPE= {DRIVER (驱动)| SERVICE(服务, 默认) | ALL(所有)} 指定需要枚举的内容。默认类型为 service。

TYPE= {own | share | interact | kernel | filesys | rec | adapt} 指定要枚举的服务类型或驱动程序类型。如上图中的(interactive) 表示此服务可交互, 属交互类型

STATE= {ACTIVE| INACTIVE| ALL}指定要枚举的服务的已开始状态。默认状态是 active。

WIN32_EXIT_CODE: 主线程退出码

SERVICE_EXIT_CODE: 服务退出码

注意,这里存在一个给这个服务的退出码,即使这个服务部不在运行,键入net helpmsg 1077,将会得到对1077错误信息的说明:

CHECKPOINT: 检查点, 可以提供一个关于在程序停止时还要沿着初始化继续前进多久的准确报告。

WAIT_HINT: 等待指示

如上图中的: (STOPPABLE, PAUSABLE, IGNORES_SHUTDOWN) 这个信息显示此服务可以接受的控制命令,上面这个就是//可停止//可暂停//忽略关机

示例

下面的示例显示了如何使用 sc query 命令:

sc query 列举活动服务和驱动程序状态(列出所有的服务,同下面的sc query all, 建议实操一下)

sc query 360EntClientSvc 显示360EntClientSvc服务的状态信息

澳门新浦京娱乐场网站 10

sc query type= driver 只列举活动的驱动程序(仔细看, 每个参数值前都有一个空格的哦)

澳门新浦京娱乐场网站 11

sc query type= service 列举Win32服务

澳门新浦京娱乐场网站 12

sc query state= all 列举所有的服务和驱动程序(列出所有的服务)

sc query bufsize= 50 用50 byte的缓冲区来进行列举

澳门新浦京娱乐场网站 13

sc query bufsize= 98 ri= 469

sc query ri= 14 在恢复列举时使用index=14(没搞懂, 只能在打印列表的起始位置上对比一下)

澳门新浦京娱乐场网站 14

sc query ri= 14, more就是多页显示, 请动手对比这个命令有无的区别

澳门新浦京娱乐场网站 15

sc query ri= 56

sc query type= service type= interact 列举所有的交互式WIN32服务

澳门新浦京娱乐场网站 16

sc query type= service type= interact

澳门新浦京娱乐场网站 17

因为这里勾选了 "允许服务与桌面交互" 所以在 TYPE 中有显示(interactive)

澳门新浦京娱乐场网站 18

这个语音服务因为 "允许服务与桌面交互" 未勾选, 所以CMD中没有(interacitve)

sc query type= driver group= ndis 列出所有属于于ndis服务组的所有驱动程序

澳门新浦京娱乐场网站 19

sc query type=driver group=ndis

澳门新浦京娱乐场网站 20

ndis服务组列表


(4) sc queryex---------查询服务的扩展状态,或枚举服务类型的状态。

获得和显示关于指定的服务、驱动程序、服务类型或驱动程序类型的 扩展信息(注意这里是扩展信息)。

语法

Sc [ServerName] queryex [type= {driver | service | all}] [type= {own | share | interact | kernel | filesys | rec | adapt}] [state= {active | inactive | all}] [bufsize= BufferSize] [ri= ResumeIndex][group= GroupName]

下表描述了用于指示命令行语法的标记。

表示法 说明

不带方括号或大括号的文本

您必须键入如下所示的项目

< 尖括号内的文本 >

您必须为其提供值的占位符

[方括号内的文本]

可选的项目

{大括号内的文本}

一组所需的项目。选择一个

竖线 (|)

互斥项 ; 的分隔符选择一个

省略号 (…)

可重复的项目

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。此 queryex 参数不与 ServerName 之外的任何其他 queryex 参数结合使用。

  • type= {driver | service | all}

  • 指定需要枚举的内容。默认类型为 service。

    描述

    driver

    指定仅枚举驱动程序。

    service

    指定仅枚举服务。

    all

    指定同时枚举驱动程序和服务。

  • type= {own | share | interact | kernel | filesys | rec | adapt}

  • 指定要枚举的服务类型或驱动程序类型。

    描述

    own

    服务以其自身的进程运行。不与其他服务共享可执行文件。这是默认值。

    share

    服务作为共享进程运行。与其他服务共享可执行文件。

    interact

    服务可以与桌面交互,接收用户的输入。交互服务必须在 LocalSystem 帐户下运行。

    kernel

    驱动程序。

    filesys

    文件系统驱动程序。

  • state= {active | inactive | all}

  • 指定要枚举的服务的已开始状态。默认状态是 active。

    描述

    active

    指定所有的活动服务。

    inactive

    指定所有暂停或停止的服务。

    all

    指定所有服务。

  • bufsize= BufferSize

  • 以字节为单位指定枚举缓冲区的大小。默认大小为 1024 字节。

  • ri= ResumeIndex

  • 指定开始或继续枚举的索引号。默认值为 0。

  • group= GroupName

  • 指定要枚举的服务组。默认设置为所有组。

  • /?

  • 在命令提示符下显示帮助。

备注

  • 如果参数及其值之间没有空格,(例如,是 type= own,而不是 type=own),则操作会失败。

Enum: more data, need 2130 bytes start resume at index 75

  • 要显示剩余的 queryex 信息,请重新运行 queryex,将 bufsize= 设置为所需的字节数,并将 ri= 设置为指定的索引。例如,在命令行键入下面的指令会显示剩余的输出:

    sc queryex bufsize= 2130 ri= 75

  • queryex 操作可以显示有关服务的下列信息:SERVICE_NAME(服务的注册表子项名)、TYPE、STATE(以及不可用的状态)、WIN32_EXIT_B、SERVICE_EXIT_B、CHECKPOINT、WAIT_HINT、PID 和 FLAGS。

  • 在某些情况下,type= 参数可以使用两次。type= 参数的第一次出现指定是否查询服务、驱动器或所有这些项。type= 参数的第二次出现指定一个由 create 操作进一步缩小查询范围的类型。

  • 当 queryex 命令的显示结果超过了枚举缓冲区的大小时,显示类似于以下内容的消息:

示例

下面的示例显示了如何使用 sc queryex 命令:

sc queryex 360EntClientSvc

澳门新浦京娱乐场网站 21

就是可以多看到两个属性

sc queryex group= "ndis" 

澳门新浦京娱乐场网站 22


(5) sc start-----------启动服务。

(6) sc pause-----------向服务发送 PAUSE 控制请求。

(7) sc stop------------向服务发送 STOP 请求。

澳门新浦京娱乐场网站 23


(8) sc continue--------向服务发送 CONTINUE 控制请求。

澳门新浦京娱乐场网站 24

澳门新浦京娱乐场网站 25


(9) sc interrogate-----向服务发送 INTERROGATE 控制请求,会导致该服务使用“服务控制管理器”更新其状态(没能完全理解其作用, 也没有测试对比出来, 有懂的烦请指点一下)。

(10) sc config----------更改服务的配置(永久)。

修改注册表和“服务控制管理器”数据库中服务项目的值。

语法

Sc [ServerName] config [ServiceName] [type= {own | share | kernel | filesys | rec | adapt | interacttype= {own | share}}] [start= {boot | system | auto | demand | disabled}] [error= {normal | severe | critical | ignore}] [binpath= BinaryPathName] [group= LoadOrderGroup] [tag= {yes | no}] [depend= dependencies] [obj={AccountName | ObjectName}] [displayname= DisplayName] [password= Password]

下表描述了用于指示命令行语法的标记。

表示法 说明

不带方括号或大括号的文本

您必须键入如下所示的项目

< 尖括号内的文本 >

您必须为其提供值的占位符

[方括号内的文本]

可选的项目

{大括号内的文本}

一组所需的项目。选择一个

竖线 (|)

互斥项 ; 的分隔符选择一个

省略号 (…)

可重复的项目

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。名称必须采用通用命名约定 (UNC) 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • type= {own | share | kernel | filesys | rec | adapt | interacttype= {own | share}}

  • 指定服务类型。

    描述

    own

    服务以其自身的进程运行。不与其他服务共享可执行文件。这是默认值。

    share

    服务作为共享进程运行。与其他服务共享可执行文件。

    kernel

    驱动程序。

    filesys

    文件系统驱动程序。

    rec

    文件系统识别驱动程序(标识计算机上使用的文件系统)。

    adapt

    适配器驱动程序(标识键盘、鼠标、磁盘驱动器这样的硬件项)。

    interact

    服务可以与桌面交互,接收用户的输入。交互服务必须在 LocalSystem 帐户下运行。该类型必须与 type= own 或 type= shared(例如,type= interact type= own)结合使用。自身使用 type= interact将会产生参数无效的错误。

  • start= {boot | system | auto | demand | disabled}

  • 指定服务的启动类型。

    描述

    boot

    由启动加载程序加载的设备驱动程序。

    system

    在核心初始化过程中启动的设备驱动程序。

    auto

    每次计算机重新启动时都会自动启动、并且即使无人登录到计算机也能正常运行的服务。

    demand

    必须手动启动的服务。如果没有指定 start=,则此项即为默认值。

    disabled

    不能启动的服务。要启动禁用的服务,应将启动类型更改为其他值。

  • error= {normal | severe | critical | ignore}

  • 如果在启动过程中,服务启动失败,则指定错误的严重性。

    描述

    normal

    将记录错误,并且显示消息对话框,通知用户服务启动失败。启动将继续。这是默认设置。

    severe

    记录错误(如果存在)。计算机尝试以最新的有效配置重新启动。这可能导致计算机能够重新启动,但服务却仍然无法运行。

    critical

    记录错误(如果存在)。计算机尝试以最新的有效配置重新启动。如果上次已知正确的配置失败,启动也将失败,启动进程将以停止错误而中止。

    ignore

    错误已记录,启动继续。记录错误超出在事件日志的范围,不再给用户作出提示。

  • binpath= BinaryPathName

  • 指定指向服务二进制文件的路径。

  • group= LoadOrderGroup

  • 指定该服务所属组的名称。组列表存储在注册表的HKLMSystemCurrentControlSetControlServiceGroupOrder 子项中。默认设置为空值。

  • tag= {yes | no}

  • 指定是否在 CreateService 调用中获得 TagID。标记仅用于引导启动或系统启动驱动程序。

  • depend= dependencies

  • 指定必须在此项服务之前启动的服务或组的名称。名称以正斜杠 (/) 分隔(看样子可以有多个前提服务)。

  • obj= {AccountName | ObjectName}

  • 指定运行服务将使用的帐户名,或指定运行驱动程序将使用的 Windows 驱动程序对象名。默认设置为 LocalSystem。

  • displayname= DisplayName

  • 指定一个可以在用户界面程序中用于为用户标识服务的友好的、有意义的名称。例如,一项服务的子项名是对用户毫无意义的 wuauserv,而显示的名称是“自动更新”。

  • password= Password

  • 指定一个密码。如果使用了非 LocalSystem 的帐户,则此项是必需的。

  • /?

  • 在命令提示符下显示帮助。

备注

  • 如果参数及其值之间没有空格,(例如,是 type= own,而不是 type=own),则操作会失败。

澳门新浦京娱乐场网站 26

sc config 的帮助文档

示例

下面的示例显示了如何使用 sc config 命令:

sc config NewService binpath= "ntsd -d c:windowssystem32NewServ.exe"

以上命令是修改 NewService 这个服务的服务程序的绑定路径.

澳门新浦京娱乐场网站 27

修改服务的启动方式为 手动

澳门新浦京娱乐场网站 28

全命令示范文本

C:>sc config 远程主机IP或主机名 type= share start= auto error= normal binpath= "d: ewfileabc.exe" group= newGroup tag= yes depend= 所依赖的服务名称,多个请以/符号分隔 obj= 如果此服务必须特殊的用户名在这里输入,否则就使用默认的LocalSystem用户及空密码 password= 特殊用户的密码

sc config 服务名 start=AUTO (自动)

sc config 服务名 start= DEMAND (手动)

sc config 服务名 start= DISABLED(禁用)

小编对上述文本作了个间隔加粗的格式, 以便能区分开. 不懂的请对照上面的参数.


(11) sc descrīption-----更改服务的描述。

设置服务的描述字符串。

语法

Sc [ServerName] description [ServiceName] [Description]

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • 描述

  • 为指定服务指定描述。如果没有指定字符串,则不会修改该服务的描述。不限制服务描述中可包含的字符数。

  • /?

  • 在命令提示符下显示帮助。

示例

下面的示例显示了如何使用 sc description 命令:

sc description 360EntClientSvc "通过CMD中SC命令修改后的内容: 360企业客户端服务"

澳门新浦京娱乐场网站 29


(12) sc failure---------更改服务失败时执行的操作。

指定服务失败时要采取的措施。

语法

Sc [ServerName] failure [ServiceName] [reset= ErrorFreePeriod] [reboot= BroadcastMessage] [command= CommandLine] [actions= FailureActionsAndDelayTime]

下表描述了用于指示命令行语法的标记。

表示法 说明

不带方括号或大括号的文本

您必须键入如下所示的项目

< 尖括号内的文本 >

您必须为其提供值的占位符

[方括号内的文本]

可选的项目

{大括号内的文本}

一组所需的项目。选择一个

竖线 (|)

互斥项 ; 的分隔符选择一个

省略号 (…)

可重复的项目

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • reset= ErrorFreePeriod

  • 指定没有失败的周期长度(单位为秒),此后失败计数应该重置为 0。这个参数必须与 actions= 参数结合使用。

  • reboot= BroadcastMessage

  • 指定服务失败时要广播的消息。

  • command= CommandLine

  • 指定服务失败时要运行的命令行。有关在失败时如何运行批处理或 VBS 文件的详细信息,请参阅“注释”。

  • actions= FailureActionsAndDelayTime

  • 指定失败操作及其延迟时间(单位为毫秒),以正斜杠 (/) 隔开。以下操作均有效:run、restart 和 reboot。此参数必须与 reset= 参数结合使用。失败后不采取任何操作时,请使用 actions= ""。

  • /?

  • 在命令提示符下显示帮助。

备注

  • 并非所有服务都允许更改其失败选项。其中一些作为服务集的一部分运行。

  • 要在失败时运行批处理文件,请指定 cmd.exe Drive:FileName.bat 为 command=参数,其中 Drive:FileName.bat 是批处理文件的完全合格的名称。

  • 要在失败时运行 VBS 文件,请指定 cscript drive:myscript.vbs 为 command= 参数,其中 Drive:myscript.vbs 是脚本文件完全合格的名称。

  • 可以将三种不同的操作指定为 actions= 参数,它们将会在服务的第一次、第二次、第三次失败时使用。

  • 如果参数及其值之间没有空格,(例如,是 type= own,而不是 type=own),则操作会失败。

示例

下面的示例显示了如何使用 sc failure 命令(小编在这里只对命令实例做解释说明, 没有实验测试):

(1) 如果msftpsvc服务无故障运行30秒失败了, 则5秒后重新启动

sc failure msftpsvc reset= 30 actions= restart/5000

(2) 如果dfs服务无故障运行60秒失败, 则5秒后运行command指定的程序或脚本

sc failure dfs reset= 60 command= c:windowsservices estart_dfs.exe actions= run/5000

(3) 如果dfs服务无故障运行60秒失败, 则30秒后重启计算机

sc failure dfs reset= 60 actions= reboot/30000

(4) 如果dfs服务无故障运行60秒失败, 则30秒后重启计算机, 并广播"因为dfs服务运行失败, 计算机将在30秒后重新启动"

sc failure dfs reset= 60 reboot= "The Distributed File System service has failed.Because of this, the computer will reboot in 30 seconds." actions= reboot/30000

(5) 如果myservice服务无故障运行1小时失败, 则5秒后重启,

第二次无故障运行1小时失败, 则10秒后运行command指定的程序或脚本,

第三次元故障运行1小时失败, 则1分钟后重启计算机机, 同时广播"myservice服务挂掉了, 即将重启电脑"

sc failure myservice reset= 3600 reboot= "MyService crashed -- rebooting machine" command= "%windir%MyServiceRecovery.exe" actions= restart/5000/run/10000/reboot/60000


(13) sc failureflag-----更改服务失败时, 故障恢复操作的标志。

指定在服务停止或因错误失败时,将会触发故障恢复操作。

语法

sc <ServerName> failureflag [<ServiceName>] [<Flag>]

参数

参数 说明

<ServerName>

指定服务所在的远程服务器的名称。 名称必须使用通用命名约定 (UNC) 格式 (例如内)。 若要在本地运行 SC.exe,忽略此参数。

<ServiceName>

指定由getkeyname操作返回的服务名称。

<Flag>

默认值为0 (无操作)。 如果此参数设置为1,并且用户已配置的服务故障恢复操作,如果服务由于错误而停止恢复操作也会触发。

/?

在命令提示符下显示帮助。

备注

如果服务无法正常工作,但通常可以重新正常启动,则设置此标志。

示例

要触发现有的服务故障恢复操作,请键入:

sc failureflag 服务名称 Flag= 1

澳门新浦京娱乐场网站 30


(14) sc sidtype---------更改服务的服务 SID 类型。

更改服务的服务安全标识符(SID)类型设置。

用法:

sc <server> sidtype [service name] [type]

选项:

type = <none|unrestricted|restricted>

备注:

如果此设置为“unrestricted”,服务控制管理器(SCM)会因为进程中的第一个服务正在启动而在服务进程下次启动时将此服务的 SID 添加至服务进程令牌。此设置仅针对 Win32 用户模式服务有效。

如果此设置为“restricted”,服务控制管理器(SCM)会因为进程中的第一个服务正在启动而在服务进程下次启动时将此服务的 SID 添加至服务进程令牌。

此外,此服务的 SID 也会被添加至进程令牌中的受限 SID 列表,因此该进程令牌将成为一个受限的令牌。有关受限令牌的详细信息,请参见 MSDN。此设置仅针对 Win32 用户模式服务有效。此外,对于共享进程服务,共处于进程中的所有服务的 SID 类型必须都被设为此设置,以便服务生效。

如果此设置为“none”,SCM 不会将服务的 SID 添加至服务进程令牌。

小编对系统的研究不深, 不知其所以然, 如有高手路过, 烦请指点一二, 感谢感谢!


(15) sc privs-----------更改服务的所需权限。

更改服务所需的权限设置。

用法:

sc <server> privs [service name] [privileges]

选项:

privileges = <由正斜杠分隔的权限>[例如: SeBackupPrivilege/SeRestorePrivilege]

没有用到过, 不知其所以然


(16) sc qc--------------查询服务的配置信息。

语法

Sc [ServerName] qc [ServiceName] [BufferSize]

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • BufferSize

  • 指定缓冲区大小(以字节为单位)。默认值为 1024 字节。

  • /?

  • 在命令提示符下显示帮助。

备注

  • qc 操作可以显示有关服务的下列信息:SERVICE_NAME(服务的注册表子项名称)、TYPE、ERROR_CONTROL、BINARY_PATH_NAME、LOAD_ORDER_GROUP、TAG、DISPLAY_NAME、DEPENDENCIES 和 SERVICE_START_NAME。

  • 管理员可以使用 SC 来确定任一服务的二进制名称,并查明它是否与其他服务共享一个进程,在命令行下键入下列命令:

    sc qc ServiceName

    SC 有助于将 Microsoft 管理控制台 (MMC) 的服务节点中的服务与“系统监视器”中的进程进行匹配。如果二进制名称是 Services.exe,那么服务共享“服务控制器”进程。

    Services.exe 启动所有的服务。为节约系统资源,几个为 Windows 开发的 Win32 服务被编写为共享 Services.exe 进程。这些服务不作为独立的进程列在“系统监视器”或“任务管理器”之中。Svchost.exe 也是如此,它是许多操作服务共享的服务主机进程。

    因为第三方 Win32 服务也可以配置为共享进程,所以不可能为每一个 Win32 服务创建一个进程。SC 可以用来获得这些服务的配置信息。但是,如果一项服务不与其他服务共享其进程,那么在服务运行时,“系统监视器”中会出现其进程。

  • 因为 SC 与包含在 Windows 中的 Services.exe 相比,提供了有关服务的更为详细和准确的信息,所以对于服务开发人员来说,SC 更有用处。Services.exe 可以确定服务是正在运行、已停止还是已暂停。尽管这些工具对于正在平稳运行的已调试应用程序已经足够,但它们提供的有关正开发的服务的信息却会使人误解。例如,正在启动的服务不管其实际运行与否都显示为已启动。

    SC 可执行对所有 Windows 服务控制应用编程接口 (API) 函数的调用。通过在命令行下指定这些函数来设置其参数。使用 SC,可以查询服务状态,检索存储在状态结构字段中的值。Services.exe 不能提供服务的完整状态,但 SC 可以显示精确的服务状态,以及最新的检查点号码和等待提示。可以将检查点用作调试工具,原因在于它表明了在程序停止响应之前初始化进行的程度。SC 也可以用来指定远程计算机名,以便于在远程计算机上调用服务 API 函数或查看服务状态结构。

示例

下面的示例显示了如何使用 sc qc 命令:

sc qc myserver newsrvice

sc qc rpcss 248

澳门新浦京娱乐场网站 31


(17) sc qdescription----查询服务的描述。

显示服务的描述字符串。

语法

Sc [ServerName] qdescription [ServiceName] [BufferSize]

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • BufferSize

  • 指定缓冲区大小(以字节为单位)。默认值为 1024 字节。

  • /?

  • 在命令提示符下显示帮助。

示例

下面的示例显示了如何使用 sc qdescription 命令:

sc qdescription rpcss

sc qdescription rpcss 138

澳门新浦京娱乐场网站 32


(18) sc qfailure--------查询失败时服务执行的操作。

澳门新浦京娱乐场网站 33

(19) sc qfailureflag----查询服务的失败操作标志。

澳门新浦京娱乐场网站 34

(20) sc qsidtype--------查询服务的服务 SID 类型。

澳门新浦京娱乐场网站 35

(21) sc qprivs----------查询服务的所需权限。

澳门新浦京娱乐场网站 36

(22) sc qtriggerinfo----查询服务的触发器参数。

澳门新浦京娱乐场网站 37

(23) sc qpreferrednode----查询首选的服务 NUMA 节点。[没有测试成功,失败]

描述:

查询 Win32 服务的首选 NUMA 节点。

此设置仅对系统自身的进程服务有效。

如果此服务没有首选节点设置,则查询将失败。

用法:

sc <server> qpreferrednode [service name]


(24) sc delete----------(从注册表)删除服务。

从注册表中删除服务子项。如果服务正在运行或者另一个进程有一个该服务的打开句柄,那么此服务将标记为删除。

语法

Sc [ServerName] delete [ServiceName]

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • /?

  • 在命令提示符下显示帮助。

备注

  • 使用“添加或删除程序”删除 DHCP、DNS 或任何其他内置的操作系统服务。“添加或删除程序”不仅会删除该服务的注册表子项,而且还会卸载该服务并删除其所有的快捷方式。

示例

下面的示例显示了如何使用 sc delete 命令:

sc delete newserv


(25) sc create----------创建服务(将其添加到注册表)。

在注册表和“服务控制管理器”中为服务创建子项和项目。

语法

Sc [ServerName] create [ServiceName] [type= {own | share | kernel | filesys | rec | adapt | interacttype= {own | share}}] [start= {boot | system | auto | demand | disabled}] [error= {normal | severe | critical | ignore}] [binpath= BinaryPathName] [group= LoadOrderGroup] [tag= {yes | no}] [depend= dependencies] [obj={AccountName | ObjectName}] [displayname= DisplayName] [password= Password]

下表描述了用于指示命令行语法的标记。

表示法 说明

不带方括号或大括号的文本

您必须键入如下所示的项目

< 尖括号内的文本 >

您必须为其提供值的占位符

[方括号内的文本]

可选的项目

{大括号内的文本}

一组所需的项目。选择一个

竖线 (|)

互斥项 ; 的分隔符选择一个

省略号 (…)

可重复的项目

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • type= {own| share | kernel | filesys | rec| adapt| interacttype= {own | share}}

  • 指定服务类型。默认类型为 type= own。

    描述

    own

    服务以其自身的进程运行。不与其他服务共享可执行文件。这是默认值。

    share

    服务作为共享进程运行。与其他服务共享可执行文件。

    kernel

    驱动程序。

    filesys

    文件系统驱动程序。

    rec

    文件系统识别驱动程序(标识在计算机上使用的文件系统)。

    interact

    服务可以与桌面交互,接收用户的输入。交互服务必须在 LocalSystem 帐户下运行。该类型必须与 type= own 或 type= shared(例如,type= interact type= own)结合使用。自身使用 type= interact将会产生参数无效的错误。

  • start= {boot | system | auto | demand | disabled}

  • 指定服务的启动类型。默认的启动类型是 start= demand。

    boot

    由启动加载程序加载的设备驱动程序。

    system

    在核心初始化过程中启动的设备驱动程序。

    auto

    每次计算机重新启动时都会自动启动、并且即使无人登录到计算机也能正常运行的服务。

    demand

    必须手动启动的服务。如果没有指定 start=,则此项即为默认值。

    disabled

    不能启动的服务。要启动禁用的服务,应将启动类型更改为其他值。

  • error= {normal | severe | critical | ignore}

  • 如果在启动过程中,服务启动失败,则指定错误的严重性。默认设置为 error= normal。

    normal

    将记录错误,并且显示消息对话框,通知用户服务启动失败。启动将继续。这是默认设置。

    severe

    记录错误(如果存在)。计算机尝试以最新的有效配置重新启动。这可能导致计算机能够重新启动,但服务却仍然无法运行。

    critical

    记录错误(如果存在)。计算机尝试以最新的有效配置重新启动。如果上次已知正确的配置失败,启动也将失败,启动进程将以停止错误而中止。

    ignore

    错误已记录,启动继续。记录错误超出在事件日志的范围,不再给用户作出提示。

  • binpath= BinaryPathName

  • 指定指向服务二进制文件的路径。binpath= 没有默认值,必须提供此字符串。

  • group= LoadOrderGroup

  • 指定该服务所属组的名称。组列表存储在注册表的 HKLMSystemCurrentControlSetControlServiceGroupOrder 子项中。默认设置为空值。

  • tag= {yes | no}

  • 指定是否在 CreateService 调用中获得 TagID。标记仅用于引导启动或系统启动驱动程序。

  • depend= dependencies

  • 指定必须在此项服务之前启动的服务或组的名称。名称以正斜杠 (/) 分隔。

  • obj= {AccountName | ObjectName}

  • 指定运行服务将使用的帐户名,或指定运行驱动程序将使用的 Windows 驱动程序对象名。

  • displayname= DisplayName

  • 指定用户界面程序用于标识服务的友好名称。

  • password= Password

  • 指定一个密码。如果使用了非 LocalSystem 的帐户,则此项是必需的。

  • /?

  • 在命令提示符下显示帮助。

备注

  • 如果参数及其值之间没有空格,(例如,是 type= own,而不是 type=own),则操作会失败。

示例

下面的示例显示了如何使用 sc create 命令:

sc myserver create NewService binpath= c:windowssystem32NewServ.exe

sc create NewService binpath= c:windowssystem32NewServ.exe type= share start= auto depend= " TDI Netbios"

如果条码是从上往读过来的, 参数上应该都不用我多注释了.

小编我试了下 sc create notepad binpath= "D:Program FilesEditPluseditplus.exe" 不可行, 小编程序开发经验不足, 可能后台服务程序, 代码中需要调用特殊的库, 这样生成的程序才可以作为后台, 这一篇文章花了两时间了, 还没有写完.


(26) sc control---------向服务发送控制。

向服务发送控制码。

语法

sc [ServerName] control [ServiceName] [{paramchange | netbindadd | netbindremove | netbindenable | netbinddisable | UserDefinedControlB}]

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • {paramchange | netbindadd | netbindremove | netbindenable | netbinddisable | UserDefinedControlB}

  • 指定要发送到服务的控制。

  • /?

  • 在命令提示符下显示帮助。


(27) sc sdshow----------显示服务的安全描述符。

澳门新浦京娱乐场网站 38

(28) sc sdset-----------设置服务的安全描述符。

使用“服务描述符定义语言 (SDDL)”来设置服务的安全描述符。

语法

Sc [ServerName] sdset ServiceName ServiceSecurityDescriptor

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • ServiceSecurityDescriptor

  • 在 SDDL 中指定服务描述符。

  • /?

  • 在命令提示符下显示帮助。


(29) sc showsid---------显示相应于假定名称的 SID 字符串。

澳门新浦京娱乐场网站 39

(30) sc triggerinfo-----配置服务的触发器参数。

澳门新浦京娱乐场网站 40

(31) sc preferrednode---设置首选的服务 NUMA 节点(不懂)。

(32) sc GetDisplayName----获取服务的 DisplayName

澳门新浦京娱乐场网站 41

(33) sc GetKeyName------获取服务的 ServiceKeyName。

澳门新浦京娱乐场网站 42

(34) sc EnumDepend------枚举服务的依存关系。

列出只有运行了指定服务才能运行的服务。

语法

Sc [ServerName] enumdepend [ServiceName] [BufferSize]

参数

  • ServerName

  • 指定服务所在的远程服务器的名称。该名称必须使用 UNC 格式(“myserver”)。要在本地运行 SC.exe,请忽略此参数。

  • ServiceName

  • 指定由 getkeyname 操作返回的服务名。

  • BufferSize

  • 以字节为单位指定枚举缓冲区的大小。默认值为 1024 字节。

  • /?

  • 在命令提示符下显示帮助。

备注

  • 如果缓冲区不够大,enumdepend 操作只会部分输出依存关系,并指定输出所有依存关系所需的额外缓冲区大小。如果输出被截断,请重新运行该操作并指定更大的缓冲区大小。

示例

下面的示例显示了如何使用 sc enumdepend 命令:

sc enumdepend rpcss 5690

sc enumdepend tapisrv

澳门新浦京娱乐场网站 43


虽然小编耐着性子, 一个一个的子命令都试了, 但是还有多个指令不确实其实际作用, 创建服务针对的应该是服务类的程序, 就像 360EntClientSvc 这个服务就是服务程序, 不同于 notepad.exe 记事本程序, 记事本程序不被创建为一个服务程序.

SC命令在实际应用中, 主要是用来优化本地系统服务, 将用不到的服务使用批处理一次性的优化掉, 或禁用或手动.

与服务控制器和已安装的服务进行通信。exe检索和设置关于服务的控制信息。您可以使用sc.exe来测试和调试服务程序。存储在注册表中的服务属性可以设置为控制如何在启动时启动服务应用程序,并作为后台进程运行。exe参数可以配置特定的服务,检索服务的当前状态,以及停止和启动服务。您可以创建调用各种sc.exe命令的批处理文件,以自动化启动或关闭服务的顺序。exe提供类似于控制面板中的管理工具项中的服务的功能。

Examples

下面的例子展示了如何使用sc boot 命令:

sc boot ok 
sc boot bad

sc config 

在注册中心和服务控制管理器的数据库中修改服务条目的值。

Parameters

  • Servername
    Optional. Specifies the name of the server when you want to run the commands on a remote computer. The name must start with two backslash () characters (for example, \myserver). To run Sc.exe on the local computer, do not supply this parameter.
  • Command
    Specifies the sc command. Note that many of the sc commands require administrative privileges on the specified computer. Sc.exe supports the following commands: Config
    Changes the configuration of a service (persistent). 

    Continue
    Sends a Continue control request to a service. 

    Control
    Sends a control to a service. 

    Create
    Creates a service (adds it to the registry). 

    Delete
    Deletes a service (from the registry). 

    EnumDepend
    Enumerates service dependencies. 

    GetDisplayName
    Obtains the DisplayName for a service. 

    GetKeyName
    Obtains the ServiceKeyName for a service. 

    Interrogate
    Sends an Interrogate control request to a service. 

    Pause
    Sends a Pause control request to a service. 

    qc
    Queries configuration for the service. For detailed information, see the reference section, "SC QC." 

    Query
    Queries the status for a service, or enumerates the status for types of services. For detailed information, see the reference section, "SC QUERY." 

    Start
    Starts a service 

    Stop
    Sends a Stop request to a service.

  • Servicename
    Specifies the name given to the Service key in the registry. Note that this is different from the display name (which is what you see with net start command and the Services tool in Control Panel. Sc.exe uses the service key name as the primary identifier for the service.

  • Optionname
    The Optionname and Optionvalue parameters allow you to specify the names and values of optional command parameters. Note that there is no space between the Optionname and the equal sign. You can supply none, one, or more optional parameters name and value pairs.
  • Optionvalue
    Specifies the value for the parameter named by Optionname. The range of valid values is often restricted for each Optionname. For a list of available values, request help for each command.

Many of the commands require Administrator privileges. Make sure that you are an administrator of the computer where the development is being performed. 

The sc create command creates an entry for the service in the registry and in the Service Control Manager database. 

Syntax

sc [Servername] create Servicename [Optionname= Optionvalue...

对于命令语法,请单击下面的任何一个sc命令:

Syntax

sc [ServerNameconfig [ServiceName] [type= {own|share|kernel|filesys|rec|adapt|interact type= {own|share}}] [start={boot|system|auto|demand|disabled}] [error={normal|severe|critical|ignore}] [binpath= BinaryPathName] [group= LoadOrderGroup] [tag={yes|no}] [depend= dependencies] [obj= {AccountName|ObjectName}] [displayname= DisplayName] [password= Password]

Parameters

  • Servername
    Optional. Specifies the name of the server when you want to run the commands on a remote computer. The name must start with two backslash characters (for example, \myserver). To run SC on the local computer, do not supply this parameter.
  • Servicename
    Specifies the name given to the service key in the registry. Note that this is different from the display name, which is what you see with net start and the Services tool in Control Panel. Sc.exe uses the service key name as the primary identifier for the service.
  • Optionname
    The Optionname and Optionvalue parameters allow you to specify the names and values of optional parameters. Note that there is no space between the Optionname and the equal sign. You can supply none, one, or more optional parameters name and value pairs. The sc query command supports the following values:OptionnameOptionvalue type=own, share, interact, kernel, filesys
    Type of service you want to create. Optionvalues include types used by drivers.
    (default = share) 

    start=boot, system, auto, demand, disabled
    Start type for the service. Option values include types used by drivers.
    (default = demand) 

    error=normal, severe, critical, ignore
    Severity of error if the service does not start during boot.
    (default = normal) 

    binPath=(string)
    Path name to the service binary file. There is no default for this parameter. This string must be supplied. 

    group=(string)
    Name of group which this service is a member of. The list of groups are stored in the registry under ServiceGroupOrder.
    (default = nothing) 

    tag=(string)
    If this string is set to "yes," Sc.exe obtains a TagId from the CreateService call, however, Sc.exe does not display the tag.
    (default = nothing) 

    depend=(space separated string)
    Names of services or groups that must start before this service. 

    obj=(string)
    Name of account in which the service runs. For drivers, this is the Windows driver object name.
    (default = LocalSystem) 

    DisplayName=(string)
    A string that can be used by user-interface programs to identify the service. 

    password=(string)
    A password string. This is required if an account other than LocalSystem is used.

Optionvalue
Specifies the value for the parameter named by Optionname. See the Optionname reference for a list of supported values. When a string is to be input, the use of empty quotes means that an empty string is passed in. Note that there is a space between OptionValue and the equal sign.

Note The sc create command performs the operations of the CreateService API function. 

The following example creates a registry entry for the service named "NewService" on the computer called \remotecomputer:

sc \remotecomputer create newservice binpath= c:ntsystem32newserv.exe

Note In Windows 2000, Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008, the binpath is located at C:WindowsSystem32Newserv.exe.

This service is created as a WIN32_SHARE_PROCESS with a SERVICE_DEMAND_START start-type by default. It does not have any dependencies, and runs in the LocalSystem security context. 

The following example creates the service on the local computer as an auto-start service that runs in its own process. It has dependencies on the TDI group and on the NetBIOS service. Notice that you must add quotes around the list of space-separated dependencies.

sc create newservice binpath= c:ntsystem32newserv.exe type= own start= auto depend= " tdi netbios"

Note In Windows 2000, Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008, the binpath is located at C:WindowsSystem32Newserv.exe. 

For further details about the Sc.exe tool, please see the Sc-dev.txt document in the Resource Kit. This document describes Sc.exe in greater detail.

Properties

Article ID: 251192 - Last Review: 09/11/2011 06:54:00 - Revision: 6.0

Applies to

  • Microsoft Windows NT Server 3.51
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003, Datacenter x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Windows Vista Home Basic
  • Windows Vista Home Basic N
  • Windows Vista Home Basic N 64-bit Edition
  • Windows Vista Business
  • Windows Vista Business 64-bit Edition
  • Windows Vista Business N
  • Windows Vista Business N 64-bit Edition
  • Windows Vista Home Premium
  • Windows Vista Home Basic 64-bit Edition
  • Windows Vista Home Premium 64-bit Edition
  • Windows Vista Ultimate
  • Windows Vista Ultimate 64-bit Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
  • Windows Server 2008 Standard
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Datacenter

Keywords:

  • kbhowto kbexpertiseinter kbinfo KB251192

sc boot

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   : 指定由getkeyname操作返回的服务名称。

type= { own | share | kernel | filesys | rec | adapt | interact   type= { own | share }}   : 指定了服务类型。

Value

Description

own

服务运行在自己的进程中。它不与其他服务共享一个可执行文件。这是默认的。

share

该服务作为一个共享过程运行。它与其他服务共享一个可执行文件。

kernel

驱动程序

filesys

文件系统驱动程序。

rec

文件系统识别的驱动程序(识别计算机上使用的文件系统)。

adapt

适配器驱动程序(识别硬件项目,如键盘、鼠标和磁盘驱动器)。

interact

该服务可以与桌面交互,接收来自用户的输入。交互式服务必须在LocalSystem帐户下运行。

此类型必须与type= owntype= shared(例如,type= interact type= own)一起使用。

使用type= interact本身就会产生一个无效的参数错误。

start= { boot | system | auto | demand | disabled } : 指定服务的开始类型。

Value

Description

boot

由引导加载程序加载的设备驱动程序。

system

在内核初始化期间启动的设备驱动程序。

auto

一种服务,每当计算机重新启动并运行,即使没有人登录计算机,它也会自动启动。

demand

必须手动启动的服务。如果start=没有指定,那么这就是默认值。

disabled

无法启动的服务。要启动一个禁用的服务,将start类型更改为其他值。

error= { normal | severe | critical | ignore } : 如果服务在启动期间不能启动,则指定错误的严重程度。

Value

Description

normal

错误会被记录,并且会显示一个消息框,通知用户一个服务没有启动。程序将继续下去。这是默认设置。

severe

错误被记录(如果可能的话)。计算机试图以最后一组良好的配置重新启动。这可能导致计算机能够重新启动,但是服务可能仍然无法运行。

critical

错误被记录(如果可能的话)。计算机试图以最后一组良好的配置重新启动。如果最后一个好的配置失败了,启动也会失败,引导过程会停止错误。

ignore

错误被记录,启动继续。除了记录事件日志中的错误之外,没有通知用户。

binpath=   BinaryPathName   : 指定服务二进制文件的路径。

group=   LoadOrderGroup   : 指定该服务为成员的组的名称。组的列表存储在HKLM系统CurrentControlSet控制ServiceGroupOrder子键的注册表中。默认为空。

tag= { yes | no } : 指定是否从CreateService调用中获得一个TagID。标签只用于启动启动和系统启动驱动程序。

depend=   dependencies   : 指定必须在此服务之前启动的服务或组的名称。名称由前斜杠(/)分隔开。

obj= { AccountName | ObjectName } :指定服务将运行的帐户的名称,或指定驱动程序运行的Windows驱动程序对象的名称。缺省值是LocalSystem。

displayname=   DisplayName   : 指定一个友好的、有意义的名称,可以在用户界面程序中使用,以识别用户的服务。例如,一个服务的子键名是wuauserv,它对用户没有帮助,显示名是自动更新。

password=   Password   : 指定一个密码。如果使用的是LocalSystem帐户以外的帐户,则需要这样做。

/ ?在命令提示符中显示帮助。

表示最后一个引导是否应该被保存为最后一个良好的配置。

Remarks

  • 如果没有一个parameter 和 value之间的空间(例如,type=属于自己,而不是类型=自身),操作就会失败。

Syntax

sc [ServerNameboot [{bad|OK}]

Examples

下面的示例展示了如何使用 sc config 命令:

sc config NewService binpath= "ntsd -d c:windowssystem32NewServ.exe"

sc continue

Sends a CONTINUE control request to a service in order to resume a paused service.

Top of page 

Parameters

ServerName   指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

[{ bad | OK }] :指定最后一个引导是坏的还是应该作为最后一个好的引导配置来保存。

/ ?在命令提示符中显示帮助。

Syntax

sc [ServerNamecontinue [ServiceName]

Top of page 

Examples

下面的例子展示了如何使用sc boot 命令:

sc boot ok 
sc boot bad

sc config 

在注册中心和服务控制管理器的数据库中修改服务条目的值。

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNameconfig [ServiceName] [type= {own|share|kernel|filesys|rec|adapt|interact type= {own|share}}] [start={boot|system|auto|demand|disabled}] [error={normal|severe|critical|ignore}] [binpath= BinaryPathName] [group= LoadOrderGroup] [tag={yes|no}] [depend= dependencies] [obj= {AccountName|ObjectName}] [displayname= DisplayName] [password= Password]

Remarks

  • Use the continue operation to resume a paused service.

Top of page 

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   : 指定由getkeyname操作返回的服务名称。

type= { own | share | kernel | filesys | rec | adapt | interact   type= { own | share }}   : 指定了服务类型。

Value

Description

own

服务运行在自己的进程中。它不与其他服务共享一个可执行文件。这是默认的。

share

该服务作为一个共享过程运行。它与其他服务共享一个可执行文件。

kernel

驱动程序

filesys

文件系统驱动程序。

rec

文件系统识别的驱动程序(识别计算机上使用的文件系统)。

adapt

适配器驱动程序(识别硬件项目,如键盘、鼠标和磁盘驱动器)。

interact

该服务可以与桌面交互,接收来自用户的输入。交互式服务必须在LocalSystem帐户下运行。

此类型必须与type= owntype= shared(例如,type= interact type= own)一起使用。

使用type= interact本身就会产生一个无效的参数错误。

start= { boot | system | auto | demand | disabled } : 指定服务的开始类型。

Value

Description

boot

由引导加载程序加载的设备驱动程序。

system

在内核初始化期间启动的设备驱动程序。

auto

一种服务,每当计算机重新启动并运行,即使没有人登录计算机,它也会自动启动。

demand

必须手动启动的服务。如果start=没有指定,那么这就是默认值。

disabled

无法启动的服务。要启动一个禁用的服务,将start类型更改为其他值。

error= { normal | severe | critical | ignore } : 如果服务在启动期间不能启动,则指定错误的严重程度。

Value

Description

normal

错误会被记录,并且会显示一个消息框,通知用户一个服务没有启动。程序将继续下去。这是默认设置。

severe

错误被记录(如果可能的话)。计算机试图以最后一组良好的配置重新启动。这可能导致计算机能够重新启动,但是服务可能仍然无法运行。

critical

错误被记录(如果可能的话)。计算机试图以最后一组良好的配置重新启动。如果最后一个好的配置失败了,启动也会失败,引导过程会停止错误。

ignore

错误被记录,启动继续。除了记录事件日志中的错误之外,没有通知用户。

binpath=   BinaryPathName   : 指定服务二进制文件的路径。

group=   LoadOrderGroup   : 指定该服务为成员的组的名称。组的列表存储在HKLM系统CurrentControlSet控制ServiceGroupOrder子键的注册表中。默认为空。

tag= { yes | no } : 指定是否从CreateService调用中获得一个TagID。标签只用于启动启动和系统启动驱动程序。

depend=   dependencies   : 指定必须在此服务之前启动的服务或组的名称。名称由前斜杠(/)分隔开。

obj= { AccountName | ObjectName } :指定服务将运行的帐户的名称,或指定驱动程序运行的Windows驱动程序对象的名称。缺省值是LocalSystem。

displayname=   DisplayName   : 指定一个友好的、有意义的名称,可以在用户界面程序中使用,以识别用户的服务。例如,一个服务的子键名是wuauserv,它对用户没有帮助,显示名是自动更新。

password=   Password   : 指定一个密码。如果使用的是LocalSystem帐户以外的帐户,则需要这样做。

/ ?在命令提示符中显示帮助。

Examples

The following example shows how you can use the sc continue command:

sc continue tapisrv

澳门新浦京娱乐场网站,sc control

Sends a CONTROL B to a service.

Top of page 

Remarks

  • 如果没有一个parameter 和 value之间的空间(例如,type=属于自己,而不是类型=自身),操作就会失败。

Syntax

sc[ServerNamecontrol [ServiceName] [{paramchange|netbindadd|netbindremove|netbindenable|netbinddisable|UserDefinedControlB}]

Top of page 

Examples

下面的示例展示了如何使用 sc config 命令:

sc config NewService binpath= "ntsd -d c:windowssystem32NewServ.exe"

sc continue

Sends a CONTINUE control request to a service in order to resume a paused service.

Top of page 

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   Specifies the service name returned by the getkeyname operation.

{ paramchange | netbindadd | netbindremove | netbindenable | netbinddisable | UserDefinedControlB } : Specifies a control to send to a service.

/? Displays help at the command prompt.

sc create

在注册中心和服务控制管理器的数据库中为服务创建一个子键和条目。

Syntax

sc [ServerNamecontinue [ServiceName]

Top of page 

Syntax

sc [ServerNamecreate [ServiceName] [type= {own|share|kernel|filesys|rec|adapt|interact type= {own|share}}] [start={boot|system|auto|demand|disabled}] [error={normal|severe|critical|ignore}] [binpath= BinaryPathName] [group= LoadOrderGroup] [tag={yes|no}] [depend= dependencies] [obj= {AccountName|ObjectName}] [displayname= DisplayName] [password= Password]

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   : 指定由getkeyname操作返回的服务名称。

type= { own | share | kernel | filesys | rec | adapt | interact   type= { own | share }}   : 指定了服务类型. 默认的类型 own.

Value

Description

own

服务运行在自己的进程中。它不与其他服务共享一个可执行文件。这是默认的。

share

该服务作为一个共享过程运行。它与其他服务共享一个可执行文件。

kernel

驱动程序

filesys

文件系统驱动程序。

rec

文件系统识别的驱动程序(识别计算机上使用的文件系统)。

interact

该服务可以与桌面交互,接收来自用户的输入。交互式服务必须在LocalSystem帐户下运行。

此类型必须与type= owntype= shared(例如,type= interact type= own)一起使用。

使用type= interact本身就会产生一个无效的参数错误。

start= { boot | system | auto | demand | disabled } : 指定服务的开始类型。默认的开始是 start= demand.

   

boot

由引导加载程序加载的设备驱动程序。

system

在内核初始化期间启动的设备驱动程序。

auto

一种服务,每当计算机重新启动并运行,即使没有人登录计算机,它也会自动启动。

demand

必须手动启动的服务。这是默认值start没有指定。

disabled

无法启动的服务。要启动一个禁用的服务,将start类型更改为其他值。

error= { normal | severe | critical | ignore } : 如果服务在启动期间不能启动,则指定错误的严重程度。默认值是error= normal.

   

normal

错误会被记录,并且会显示一个消息框,通知用户一个服务没有启动。公司将继续下去。这是默认设置。

severe

错误被记录(如果可能的话)。计算机试图以最后一组良好的配置重新启动。这可能导致计算机能够重新启动,但是服务可能仍然无法运行。

critical

错误被记录(如果可能的话)。计算机试图以最后一组良好的配置重新启动。如果最后一个好的配置失败了,启动也会失败,引导过程会停止错误。

ignore

错误被记录,启动继续。除了记录事件日志中的错误之外,没有通知用户。

binpath=   BinaryPathName   : 指定服务二进制文件的路径。没有默认值 ,binpath这个字符串必须提供.

group=   LoadOrderGroup   :指定该服务为成员的组的名称。组的列表存储在注册表中 HKLMSystemCurrentControlSetControlServiceGroupOrder subkey. 默认为空。

tag= { yes | no } : 指定是否从CreateService调用中获得一个TagID。标签只用于启动启动和系统启动驱动程序。

depend=   dependencies   : 指定必须在此服务之前启动的服务或组的名称。名称由前斜杠(/)分隔开。

obj= { AccountName | ObjectName } : 指定服务将运行的帐户的名称,或指定驱动程序运行的Windows驱动程序对象的名称。

displayname=   DisplayName   : 指定一个友好的名称,用户界面程序可以使用它来标识服务。

password=   Password   : 指定一个密码。如果使用的是LocalSystem以外的帐户,则需要这样做。

/? : 在命令提示符中显示帮助。 

Remarks

  • Use the continue operation to resume a paused service.

Top of page 

Remarks

  • 没有参数和值之间的空格操作将会失败(正确:type= own, 错误:type=own),

Examples

The following example shows how you can use the sc continue command:

sc continue tapisrv

sc control

Sends a CONTROL B to a service.

Top of page 

Examples

下面的例子展示了如何使用 sc create 命令:

sc \myserver create NewService binpath= c:windowssystem32NewServ.exe 
sc create NewService binpath= c:windowssystem32NewServ.exe type= share start= auto depend= " TDI Netbios"

sc create ServerWCF binPath= "F:/SalesAndSalesManagement/ServerWCF/bin/Release/ServerWCF.exe" TYPE= "own" start= "auto" TAG= "no" DisplayName= "ServerWCF"

 

sc delete

从注册表中删除服务子键。如果服务正在运行,或者另一个进程对服务有一个打开的句柄,那么该服务将被标记为删除。

Syntax

sc[ServerNamecontrol [ServiceName] [{paramchange|netbindadd|netbindremove|netbindenable|netbinddisable|UserDefinedControlB}]

Top of page 

Syntax

sc [ServerNamedelete [ServiceName]

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   Specifies the service name returned by the getkeyname operation.

{ paramchange | netbindadd | netbindremove | netbindenable | netbinddisable | UserDefinedControlB } : Specifies a control to send to a service.

/? Displays help at the command prompt.

sc create

在注册中心和服务控制管理器的数据库中为服务创建一个子键和条目。

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用UNC格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   : 指定由该服务返回的服务名称 getkeyname 操作.

/? :在命令提示符中显示帮助。

Syntax

sc [ServerNamecreate [ServiceName] [极度指令之SC命令详解,Service的官方描述。type= {own|share|kernel|filesys|rec|adapt|interact type= {own|share}}] [start={boot|system|auto|demand|disabled}] [error={normal|severe|critical|ignore}] [binpath= BinaryPathName] [group= LoadOrderGroup] [tag={yes|no}] [depend= dependencies] [obj= {AccountName|ObjectName}] [displayname= DisplayName] [password= Password]

Remarks

  • 使用添加或删除程序来删除DHCP、DNS或任何其他内置的操作系统服务。添加或删除程序不仅会删除服务的注册表子键,还会卸载服务并删除服务的任何快捷方式。

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用通用命名约定(UNC)格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   : 指定由getkeyname操作返回的服务名称。

type= { own | share | kernel | filesys | rec | adapt | interact   type= { own | share }}   : 指定了服务类型. 默认的类型 own.

Value

Description

own

服务运行在自己的进程中。它不与其他服务共享一个可执行文件。这是默认的。

share

该服务作为一个共享过程运行。它与其他服务共享一个可执行文件。

kernel

驱动程序

filesys

文件系统驱动程序。

rec

文件系统识别的驱动程序(识别计算机上使用的文件系统)。

interact

该服务可以与桌面交互,接收来自用户的输入。交互式服务必须在LocalSystem帐户下运行。

此类型必须与type= owntype= shared(例如,type= interact type= own)一起使用。

使用type= interact本身就会产生一个无效的参数错误。

start= { boot | system | auto | demand | disabled } : 指定服务的开始类型。默认的开始是 start= demand.

   

boot

由引导加载程序加载的设备驱动程序。

system

在内核初始化期间启动的设备驱动程序。

auto

一种服务,每当计算机重新启动并运行,即使没有人登录计算机,它也会自动启动。

demand

必须手动启动的服务。这是默认值start没有指定。

disabled

无法启动的服务。要启动一个禁用的服务,将start类型更改为其他值。

error= { normal | severe | critical | ignore } : 如果服务在启动期间不能启动,则指定错误的严重程度。默认值是error= normal.

   

normal

错误会被记录,并且会显示一个消息框,通知用户一个服务没有启动。公司将继续下去。这是默认设置。

severe

错误被记录(如果可能的话)。计算机试图以最后一组良好的配置重新启动。这可能导致计算机能够重新启动,但是服务可能仍然无法运行。

critical

错误被记录(如果可能的话)。计算机试图以最后一组良好的配置重新启动。如果最后一个好的配置失败了,启动也会失败,引导过程会停止错误。

ignore

错误被记录,启动继续。除了记录事件日志中的错误之外,没有通知用户。

binpath=   BinaryPathName   : 指定服务二进制文件的路径。没有默认值 ,binpath这个字符串必须提供.

group=   LoadOrderGroup   极度指令之SC命令详解,Service的官方描述。:指定该服务为成员的组的名称。组的列表存储在注册表中 HKLMSystemCurrentControlSetControlServiceGroupOrder subkey. 默认为空。

tag= { yes | no } : 指定是否从CreateService调用中获得一个TagID。标签只用于启动启动和系统启动驱动程序。

depend=   dependencies   : 指定必须在此服务之前启动的服务或组的名称。名称由前斜杠(/)分隔开。

obj= { AccountName | ObjectName } : 指定服务将运行的帐户的名称,或指定驱动程序运行的Windows驱动程序对象的名称。

displayname=   DisplayName   : 指定一个友好的名称,用户界面程序可以使用它来标识服务。

password=   Password   : 指定一个密码。如果使用的是LocalSystem以外的帐户,则需要这样做。

/? : 在命令提示符中显示帮助。 

Examples

下面的示例展示了如何使用 sc delete 命令:

sc delete newserv

 

sc description

为服务设置描述字符串。

Remarks

  • 没有参数和值之间的空格操作将会失败(正确:type= own, 错误:type=own),

Syntax

sc [ServerNamedescription [ServiceName] [Description]

Top of page 

Examples

下面的例子展示了如何使用 sc create 命令:

sc \myserver create NewService binpath= c:windowssystem32NewServ.exe 
sc create NewService binpath= c:windowssystem32NewServ.exe type= share start= auto depend= " TDI Netbios"

sc create ServerWCF binPath= "F:/SalesAndSalesManagement/ServerWCF/bin/Release/ServerWCF.exe" TYPE= "own" start= "auto" TAG= "no" DisplayName= "ServerWCF"

 

sc delete

从注册表中删除服务子键。如果服务正在运行,或者另一个进程对服务有一个打开的句柄,那么该服务将被标记为删除。

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

Description   Specifies a description for the specified service. If no string is specified, the description of the service is not modified. There is no limit to the number of characters that can be contained in the service description.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamedelete [ServiceName]

Examples

The following example shows how you can use the sc description command:

sc description newserv "Runs quality of service control."

sc enumdepend

Lists the services that cannot run unless the specified service is running.

Top of page 

Parameters

ServerName   : 指定服务所在的远程服务器的名称。名称必须使用UNC格式(“myserver”)。要在本地运行sc.exe,请忽略这个参数。

ServiceName   : 指定由该服务返回的服务名称 getkeyname 操作.

/? :在命令提示符中显示帮助。

Syntax

sc [ServerNameenumdepend [ServiceName] [BufferSize]

Top of page 

Remarks

  • 使用添加或删除程序来删除DHCP、DNS或任何其他内置的操作系统服务。添加或删除程序不仅会删除服务的注册表子键,还会卸载服务并删除服务的任何快捷方式。

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

BufferSize   Specifies the size (in bytes) of the enumeration buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Examples

下面的示例展示了如何使用 sc delete 命令:

sc delete newserv

 

sc description

为服务设置描述字符串。

Remarks

  • If the buffer is not big enough, the enumdepend operation will output dependencies only partially, and will specify the additional buffer size required to output all dependencies. If the output is truncated, rerun the operation and specify the larger buffer size.

Top of page 

Syntax

sc [ServerNamedescription [ServiceName] [Description]

Top of page 

Examples

The following examples show how you can use the sc enumdepend command:

sc enumdepend rpcss 5690 
sc enumdepend tapisrv

sc failure

Specifies what action to take upon failure of the service.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

Description   Specifies a description for the specified service. If no string is specified, the description of the service is not modified. There is no limit to the number of characters that can be contained in the service description.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamefailure [ServiceName] [reset= ErrorFreePeriod] [reboot= BroadcastMessage] [command= CommandLine] [actions= FailureActionsAndDelayTime]

Top of page 

Examples

The following example shows how you can use the sc description command:

sc description newserv "Runs quality of service control."

sc enumdepend

Lists the services that cannot run unless the specified service is running.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

reset=   ErrorFreePeriod   Specifies the length of the period (in seconds) with no failures after which the failure count should be reset to 0. This parameter must be used in conjunction with the actions= parameter.

reboot=   BroadcastMessage   Specifies the message to be broadcast upon failure of the service.

command=   CommandLine   Specifies the command line to be run upon failure of the service. For more information about how to run a batch or VBS file upon failure, see Remarks.

actions=   FailureActionsAndDelayTime   Specifies the failure actions and their delay time (in milliseconds) separated by the forward slash (/). The following actions are valid: runrestart, and reboot. This parameter must be used in conjunction with the reset=parameter. Use actions= "" to take no action upon failure.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNameenumdepend [ServiceName] [BufferSize]

Top of page 

Remarks

  • Not all services allow changes to their failure options. Some run as part of a service set.

  • To run a batch file upon failure, specify cmd**.exe Drive:FileName.bat to the command= parameter, where Drive:FileName.bat**is the fully qualified name of the batch file.

  • To run a VBS file upon failure, specify cscript drive**:myscript.vbs to the command= parameter, where drive:myscript.vbs** is the fully qualified name of the script file.

  • It is possible to specify three different actions to the actions= parameter, which will be used the first, second, and third time a service fails.

  • Without a space between a parameter and its value (that is, type= own, not type=own), the operation will fail.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

BufferSize   Specifies the size (in bytes) of the enumeration buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Examples

The following examples show how you can use the sc failure command:

sc failure msftpsvc reset= 30 actions= restart/5000 
sc failure dfs reset= 60 command= c:windowsservicesrestart_dfs.exe actions= run/5000 
sc failure dfs reset= 60 actions= reboot/30000 
sc failure dfs reset= 60 reboot= "The Distributed File System service has failed. Because of this, the computer will reboot in 30 seconds." actions= reboot/30000 
sc failure myservice reset= 3600 reboot= "MyService crashed -- rebooting machine" command= " %windir%MyServiceRecovery.exe" actions= restart/5000/run/10000/reboot/60000

sc getdisplayname

Gets the display name associated with a particular service.

Top of page 

Remarks

  • If the buffer is not big enough, the enumdepend operation will output dependencies only partially, and will specify the additional buffer size required to output all dependencies. If the output is truncated, rerun the operation and specify the larger buffer size.

Top of page 

Syntax

sc [ServerNamegetdisplayname [ServiceName] [BufferSize]

Top of page 

Examples

The following examples show how you can use the sc enumdepend command:

sc enumdepend rpcss 5690 
sc enumdepend tapisrv

sc failure

Specifies what action to take upon failure of the service.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamefailure [ServiceName] [reset= ErrorFreePeriod] [reboot= BroadcastMessage] [command= CommandLine] [actions= FailureActionsAndDelayTime]

Top of page 

Examples

The following examples show how you can use the sc getdisplayname command:

sc getdisplayname clipsrv 
sc getdisplayname tapisrv 
sc getdisplayname sharedaccess

sc getkeyname

Gets the key name associated with a particular service, using the display name as input.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

reset=   ErrorFreePeriod   Specifies the length of the period (in seconds) with no failures after which the failure count should be reset to 0. This parameter must be used in conjunction with the actions= parameter.

reboot=   BroadcastMessage   Specifies the message to be broadcast upon failure of the service.

command=   CommandLine   Specifies the command line to be run upon failure of the service. For more information about how to run a batch or VBS file upon failure, see Remarks.

actions=   FailureActionsAndDelayTime   Specifies the failure actions and their delay time (in milliseconds) separated by the forward slash (/). The following actions are valid: runrestart, and reboot. This parameter must be used in conjunction with the reset=parameter. Use actions= "" to take no action upon failure.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamegetkeyname [ServiceDisplayName] [BufferSize]

Top of page 

Remarks

  • Not all services allow changes to their failure options. Some run as part of a service set.

  • To run a batch file upon failure, specify cmd**.exe Drive:FileName.bat to the command= parameter, where Drive:FileName.bat**is the fully qualified name of the batch file.

  • To run a VBS file upon failure, specify cscript drive**:myscript.vbs to the command= parameter, where drive:myscript.vbs** is the fully qualified name of the script file.

  • It is possible to specify three different actions to the actions= parameter, which will be used the first, second, and third time a service fails.

  • Without a space between a parameter and its value (that is, type= own, not type=own), the operation will fail.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceDisplayName   Specifies the display name of the service.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Examples

The following examples show how you can use the sc failure command:

sc failure msftpsvc reset= 30 actions= restart/5000 
sc failure dfs reset= 60 command= c:windowsservicesrestart_dfs.exe actions= run/5000 
sc failure dfs reset= 60 actions= reboot/30000 
sc failure dfs reset= 60 reboot= "The Distributed File System service has failed. Because of this, the computer will reboot in 30 seconds." actions= reboot/30000 
sc failure myservice reset= 3600 reboot= "MyService crashed -- rebooting machine" command= " %windir%MyServiceRecovery.exe" actions= restart/5000/run/10000/reboot/60000

sc getdisplayname

Gets the display name associated with a particular service.

Top of page 

Remarks

  • If the ServiceDisplayName contains spaces, use quotation marks around the text (that is, "*Service Display Name*").

Top of page 

Syntax

sc [ServerNamegetdisplayname [ServiceName] [BufferSize]

Top of page 

Examples

The following examples show how you can use the sc getkeyname command:

sc getkeyname "remote procedure call (rpc)" 
sc getkeyname "internet connection sharing" 
sc getkeyname clipbook

sc interrogate

Sends an INTERROGATE control request to a service.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNameinterrogate [ServiceName]

Top of page 

Examples

The following examples show how you can use the sc getdisplayname command:

sc getdisplayname clipsrv 
sc getdisplayname tapisrv 
sc getdisplayname sharedaccess

sc getkeyname

Gets the key name associated with a particular service, using the display name as input.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamegetkeyname [ServiceDisplayName] [BufferSize]

Top of page 

Remarks

  • Sending INTERROGATE to a service causes the service to update its status with the Service Control Manager.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceDisplayName   Specifies the display name of the service.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Examples

The following examples show how you can use the sc interrogate command:

sc interrogate sharedaccess 
sc interrogate rpcss

sc lock

Locks the Service Control Manager's database.

Top of page 

Remarks

  • If the ServiceDisplayName contains spaces, use quotation marks around the text (that is, "*Service Display Name*").

Top of page 

Syntax

sc [ServerNamelock

Top of page 

Examples

The following examples show how you can use the sc getkeyname command:

sc getkeyname "remote procedure call (rpc)" 
sc getkeyname "internet connection sharing" 
sc getkeyname clipbook

sc interrogate

Sends an INTERROGATE control request to a service.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNameinterrogate [ServiceName]

Top of page 

Remarks

  • Locking the Service Control Manager's database prevents any services from starting. Use this if you want to make sure that a service will not be started after it has been stopped. This will allow you to take some action (for example, deleting the service) without interference.

  • Using the lock operation locks the Service Control Manager's database and then allows the database to be unlocked by typingu. You can also kill the process from which you locked the database.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Examples

The following example shows how you can use the sc lock command:

sc lock

sc pause

Sends a PAUSE control request to a service.

Top of page 

Remarks

  • Sending INTERROGATE to a service causes the service to update its status with the Service Control Manager.

Top of page 

Syntax

sc [ServerNamepause [ServiceName]

Top of page 

Examples

The following examples show how you can use the sc interrogate command:

sc interrogate sharedaccess 
sc interrogate rpcss

sc lock

Locks the Service Control Manager's database.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamelock

Top of page 

Remarks

  • Use the pause operation to pause a service before shutting it down.

  • Not all services can be paused.

  • Not all services perform the same when paused. Some continue to service existing clients, but refuse to accept new clients. Others cease to service existing clients and also refuse to accept new ones.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

/? Displays help at the command prompt.

Top of page 

Examples

The following example shows how you can use the sc pause command:

sc pause tapisrv

sc qc

Queries the configuration information for a service.

Top of page 

Remarks

  • Locking the Service Control Manager's database prevents any services from starting. Use this if you want to make sure that a service will not be started after it has been stopped. This will allow you to take some action (for example, deleting the service) without interference.

  • Using the lock operation locks the Service Control Manager's database and then allows the database to be unlocked by typingu. You can also kill the process from which you locked the database.

Top of page 

Syntax

sc [ServerNameqc [ServiceName] [BufferSize]

Top of page 

Examples

The following example shows how you can use the sc lock command:

sc lock

sc pause

Sends a PAUSE control request to a service.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamepause [ServiceName]

Top of page 

Remarks

  • The qc operation displays the following information about a service: SERVICE_NAME (service's registry subkey name), TYPE, ERROR_CONTROL, BINARY_PATH_NAME, LOAD_ORDER_GROUP, TAG, DISPLAY_NAME, DEPENDENCIES, and SERVICE_START_NAME.

  • Administrators can use SC to determine the binary name of any service and find out if it shares a process with other services by typing the following at the command line:

    sc qc ServiceName

    SC can help match up services in the Services node of Microsoft Management Console (MMC) with processes in System Monitor. If the binary name is Services.exe, then the service shares the Service Controller process.

    Services.exe starts all services. To conserve system resources, several Win32 services developed for Windows are written to share the Services.exe process. These services are not listed as separate processes in System Monitor or Task Manager. The same is true of Svchost.exe which is a service host process that many operating services share.

    There might not be a process for every Win32 service because third-party Win32 services can also be configured to share processes. SC can be used to get configuration information on these services. If a service does not share its process with other services, however, there will be a process for it in System Monitor when the service is running.

  • SC can be useful for developers of services because it provides more detailed and accurate information about services than Services.exe, which is included with Windows. Services.exe can determine whether a service is running, stopped, or paused. Although these tools are adequate for a debugged application that is running smoothly, the information they provide about a service being developed can be misleading. For example, a service that is starting is shown as started whether it is actually running or not.

    SC implements calls to all Windows service control application programming interface (API) functions. Set the parameters to these functions by specifying them at the command line.

    Using SC, you can query the service status and retrieve the values stored in the status structure fields. Services.exe cannot provide you with the complete status of a service, but SC shows the exact state of the service, as well as the last checkpoint number and wait hint. You can use the checkpoint as a debugging tool because it indicates how far the initialization progressed before the program stopped responding. SC also lets you specify the name of a remote computer so that you can call the service API functions or view the service status structures on a remote computer.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Examples

The following examples show how you can use the sc qc command:

sc qc \myserver newsrvice 
sc qc rpcss 248

sc qdescription

Displays the description string of a service.

Top of page 

Remarks

  • Use the pause operation to pause a service before shutting it down.

  • Not all services can be paused.

  • Not all services perform the same when paused. Some continue to service existing clients, but refuse to accept new clients. Others cease to service existing clients and also refuse to accept new ones.

Top of page 

Syntax

sc [ServerNameqdescription [ServiceName] [BufferSize]

Top of page 

Examples

The following example shows how you can use the sc pause command:

sc pause tapisrv

sc qc

Queries the configuration information for a service.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNameqc [ServiceName] [BufferSize]

Top of page 

Examples

The following examples show how you can use the sc qdescription command:

sc qdescription rpcss 
sc qdescription rpcss 138

sc qfailure

Displays the actions that will be performed if the specified service fails.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNameqfailure [ServiceName] [BufferSize]

Top of page 

Remarks

  • The qc operation displays the following information about a service: SERVICE_NAME (service's registry subkey name), TYPE, ERROR_CONTROL, BINARY_PATH_NAME, LOAD_ORDER_GROUP, TAG, DISPLAY_NAME, DEPENDENCIES, and SERVICE_START_NAME.

  • Administrators can use SC to determine the binary name of any service and find out if it shares a process with other services by typing the following at the command line:

    sc qc ServiceName

    SC can help match up services in the Services node of Microsoft Management Console (MMC) with processes in System Monitor. If the binary name is Services.exe, then the service shares the Service Controller process.

    Services.exe starts all services. To conserve system resources, several Win32 services developed for Windows are written to share the Services.exe process. These services are not listed as separate processes in System Monitor or Task Manager. The same is true of Svchost.exe which is a service host process that many operating services share.

    There might not be a process for every Win32 service because third-party Win32 services can also be configured to share processes. SC can be used to get configuration information on these services. If a service does not share its process with other services, however, there will be a process for it in System Monitor when the service is running.

  • SC can be useful for developers of services because it provides more detailed and accurate information about services than Services.exe, which is included with Windows. Services.exe can determine whether a service is running, stopped, or paused. Although these tools are adequate for a debugged application that is running smoothly, the information they provide about a service being developed can be misleading. For example, a service that is starting is shown as started whether it is actually running or not.

    SC implements calls to all Windows service control application programming interface (API) functions. Set the parameters to these functions by specifying them at the command line.

    Using SC, you can query the service status and retrieve the values stored in the status structure fields. Services.exe cannot provide you with the complete status of a service, but SC shows the exact state of the service, as well as the last checkpoint number and wait hint. You can use the checkpoint as a debugging tool because it indicates how far the initialization progressed before the program stopped responding. SC also lets you specify the name of a remote computer so that you can call the service API functions or view the service status structures on a remote computer.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname peration.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Examples

The following examples show how you can use the sc qc command:

sc qc \myserver newsrvice 
sc qc rpcss 248

sc qdescription

Displays the description string of a service.

Top of page 

Remarks

  • The qfailure operation displays the following information about a service: SERVICE_NAME (service's registry subkey name), RESET_PERIOD, REBOOT_MESSAGE, COMMAND_LINE, and FAILURE_ACTIONS.

Top of page 

Syntax

sc [ServerNameqdescription [ServiceName] [BufferSize]

Top of page 

Examples

The following examples show how you can use the sc qfailure command:

sc qfailure rpcss 
sc qfailure rpcss 20

sc query

Obtains and displays information about the specified service, driver, type of service, or type of driver.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamequery [ServiceName] [type= {driver|service|all}] [type= {own|share|interact|kernel|filesys|rec|adapt}] [state={active|inactive|all}] [bufsize= BufferSize] [ri= ResumeIndex] [group= GroupName

Top of page 

Examples

The following examples show how you can use the sc qdescription command:

sc qdescription rpcss 
sc qdescription rpcss 138

sc qfailure

Displays the actions that will be performed if the specified service fails.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation. This query parameter is not used in conjunction with other query parameters (other than ServerName).

type= { driver | service | all }   Specifies what to enumerate. The default type is service.

Value

Description

driver

Specifies that only drivers are enumerated.

service

Specifies that only services are enumerated.

all

Specifies that both drivers and services are enumerated.

type= { own | share | interact | kernel | filesys | rec | adapt }   Specifies the type of services or type of drivers to enumerate.

Value

Description

own

The service runs in its own process. It does not share an executable file with other services. This is the default.

share

The service runs as a shared process. It shares an executable file with other services.

interact

The service can interact with the desktop, receiving input from users. Interactive services must be run under the LocalSystem account.

kernel

Driver.

filesys

File system driver.

state= { active | inactive | all }   Specifies the started state of the service for which to enumerate. The default state is active.

Value

Description

active

Specifies all active services.

inactive

Specifies all paused or stopped services.

all

Specifies all services.

bufsize=   BufferSize   Specifies the size (in bytes) of the enumeration buffer. The default size is 1024 bytes. Increase the size of the enumeration buffer when the display resulting from a query exceeds 1024 bytes.

ri=   ResumeIndex   Specifies the index number at which to begin or resume the enumeration. The default is 0. Use this parameter in conjunction with the bufsize= parameter when more information is returned by a query than the default buffer can display.

group=   GroupName   Specifies the service group to enumerate. The default is all groups.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNameqfailure [ServiceName] [BufferSize]

Top of page 

Remarks

  • Without a space between a parameter and its value (that is, type= own, not type=own), the operation will fail.

  • The query operation displays the following information about a service: SERVICE_NAME (service's registry subkey name), TYPE, STATE (as well as states which are not available), WIN32_EXIT_B, SERVICE_EXIT_B, CHECKPOINT, and WAIT_HINT.

  • The type= parameter can be used twice in some cases. The first appearance of the type= parameter specifies whether to query services, drivers, or all. The second appearance of the type= parameter specifies a type from the create operation to further narrow a query's scope.

  • When the display resulting from a query command exceeds the size of the enumeration buffer, a message similar to the following is displayed:

    Enum: more data, need 1822 bytes start resume at index 79

    To display the remaining query information, rerun query, setting bufsize= to be the number of bytes and ri= to the specified index. For example, the remaining output would be displayed by typing the following at the command line:

    sc query bufsize= 1822 ri= 79

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname peration.

BufferSize   Specifies the size (in bytes) of the buffer. The default is 1024 bytes.

/? Displays help at the command prompt.

Top of page 

Examples

The following examples show how you can use the sc query command:

sc query 
sc query messenger 
sc query type= driver 
sc query type= service 
sc query state= all 
sc query bufsize= 50 
sc query ri= 14 
sc query type= service type= interact 
sc query type= driver group= ndis

sc queryex

Obtains and displays extended information about the specified service, driver, type of service, or type of driver.

Top of page 

Remarks

  • The qfailure operation displays the following information about a service: SERVICE_NAME (service's registry subkey name), RESET_PERIOD, REBOOT_MESSAGE, COMMAND_LINE, and FAILURE_ACTIONS.

Top of page 

Syntax

sc [ServerNamequeryex [type= {driver|service|all}] [type= {own|share|interact|kernel|filesys|rec|adapt}] [state={active|inactive|all}] [bufsize= BufferSize] [ri= ResumeIndex] [group= GroupName]

Top of page 

Examples

The following examples show how you can use the sc qfailure command:

sc qfailure rpcss 
sc qfailure rpcss 20

sc query

Obtains and displays information about the specified service, driver, type of service, or type of driver.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation. This queryex parameter is not used in conjunction with any other queryex parameters except ServerName.

type= { driver | service | all }   Specifies what to enumerate. The default type is service.

Value

Description

driver

Specifies that only drivers are enumerated.

service

Specifies that only services are enumerated.

all

Specifies that both drivers and services are enumerated.

type= { own | share | interact | kernel | filesys | rec | adapt } : Specifies the type of services or type of drivers to enumerate.

Value

Description

own

The service runs in its own process. It does not share an executable file with other services. This is the default.

share

The service runs as a shared process. It shares an executable file with other services.

interact

The service can interact with the desktop, receiving input from users. Interactive services must be run under the LocalSystem account.

kernel

Driver.

filesys

File system driver.

state= { active | inactive | all }   Specifies the started state of the service for which to enumerate. The default state is active.

Value

Description

active

Specifies all active services.

inactive

Specifies all paused or stopped services.

all

Specifies all services.

bufsize=   BufferSize   Specifies the size (in bytes) of the enumeration buffer. The default size is 1024 bytes.

ri=   ResumeIndex   Specifies the index number at which to begin or resume the enumeration. The default is 0.

group=   GroupName   Specifies the service group to enumerate. The default is all groups.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamequery [ServiceName] [type= {driver|service|all}] [type= {own|share|interact|kernel|filesys|rec|adapt}] [state={active|inactive|all}] [bufsize= BufferSize] [ri= ResumeIndex] [group= GroupName

Top of page 

Remarks

  • Without a space between a parameter and its value (that is, type= own, not type=own), the operation will fail.

  • The queryex operation displays the following information about a service: SERVICE_NAME (service's registry subkey name), TYPE, STATE (as well as states that are not available), WIN32_EXIT_B, SERVICE_EXIT_B, CHECKPOINT, WAIT_HINT, PID, and FLAGS.

  • The type= parameter can be used twice in some cases. The first appearance of the type= parameter specifies whether to query services, drivers, or all. The second appearance of the type= parameter specifies a type from the create operation to further narrow a query's scope.

  • When the display resulting from a queryex command exceeds the size of the enumeration buffer, a message similar to the following is displayed:

    Enum: more data, need 2130 bytes start resume at index 75

    To display the remaining queryex information, rerun queryex, setting bufsize= to be the number of bytes and ri= to the specified index. For example, the remaining output would be displayed by typing the following at the command line:

    sc queryex bufsize= 2130 ri= 75

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation. This query parameter is not used in conjunction with other query parameters (other than ServerName).

type= { driver | service | all }   Specifies what to enumerate. The default type is service.

Value

Description

driver

Specifies that only drivers are enumerated.

service

Specifies that only services are enumerated.

all

Specifies that both drivers and services are enumerated.

type= { own | share | interact | kernel | filesys | rec | adapt }   Specifies the type of services or type of drivers to enumerate.

Value

Description

own

The service runs in its own process. It does not share an executable file with other services. This is the default.

share

The service runs as a shared process. It shares an executable file with other services.

interact

The service can interact with the desktop, receiving input from users. Interactive services must be run under the LocalSystem account.

kernel

Driver.

filesys

File system driver.

state= { active | inactive | all }   Specifies the started state of the service for which to enumerate. The default state is active.

Value

Description

active

Specifies all active services.

inactive

Specifies all paused or stopped services.

all

Specifies all services.

bufsize=   BufferSize   Specifies the size (in bytes) of the enumeration buffer. The default size is 1024 bytes. Increase the size of the enumeration buffer when the display resulting from a query exceeds 1024 bytes.

ri=   ResumeIndex   Specifies the index number at which to begin or resume the enumeration. The default is 0. Use this parameter in conjunction with the bufsize= parameter when more information is returned by a query than the default buffer can display.

group=   GroupName   Specifies the service group to enumerate. The default is all groups.

/? Displays help at the command prompt.

Top of page 

Examples

The following examples show how you can use the sc queryex command:

sc queryex messenger 
sc queryex group= ""

sc querylock

Queries and displays the lock status for the Service Control Manager's database.

Top of page 

Remarks

  • Without a space between a parameter and its value (that is, type= own, not type=own), the operation will fail.

  • The query operation displays the following information about a service: SERVICE_NAME (service's registry subkey name), TYPE, STATE (as well as states which are not available), WIN32_EXIT_B, SERVICE_EXIT_B, CHECKPOINT, and WAIT_HINT.

  • The type= parameter can be used twice in some cases. The first appearance of the type= parameter specifies whether to query services, drivers, or all. The second appearance of the type= parameter specifies a type from the create operation to further narrow a query's scope.

  • When the display resulting from a query command exceeds the size of the enumeration buffer, a message similar to the following is displayed:

    Enum: more data, need 1822 bytes start resume at index 79

    To display the remaining query information, rerun query, setting bufsize= to be the number of bytes and ri= to the specified index. For example, the remaining output would be displayed by typing the following at the command line:

    sc query bufsize= 1822 ri= 79

Top of page 

Syntax

sc [ServerNamequerylock

Top of page 

Examples

The following examples show how you can use the sc query command:

sc query 
sc query messenger 
sc query type= driver 
sc query type= service 
sc query state= all 
sc query bufsize= 50 
sc query ri= 14 
sc query type= service type= interact 
sc query type= driver group= ndis

sc queryex

Obtains and displays extended information about the specified service, driver, type of service, or type of driver.

Top of page 

Parameter

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

/? Displays help at the command prompt.

sc sdset

Sets a service's security descriptor using Service Descriptor Definition Language (SDDL).

Top of page 

Syntax

sc [ServerNamequeryex [type= {driver|service|all}] [type= {own|share|interact|kernel|filesys|rec|adapt}] [state={active|inactive|all}] [bufsize= BufferSize] [ri= ResumeIndex] [group= GroupName]

Top of page 

Syntax

sc [ServerNamesdset ServiceName ServiceSecurityDescriptor

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation. This queryex parameter is not used in conjunction with any other queryex parameters except ServerName.

type= { driver | service | all }   Specifies what to enumerate. The default type is service.

Value

Description

driver

Specifies that only drivers are enumerated.

service

Specifies that only services are enumerated.

all

Specifies that both drivers and services are enumerated.

type= { own | share | interact | kernel | filesys | rec | adapt } : Specifies the type of services or type of drivers to enumerate.

Value

Description

own

The service runs in its own process. It does not share an executable file with other services. This is the default.

share

The service runs as a shared process. It shares an executable file with other services.

interact

The service can interact with the desktop, receiving input from users. Interactive services must be run under the LocalSystem account.

kernel

Driver.

filesys

File system driver.

state= { active | inactive | all }   Specifies the started state of the service for which to enumerate. The default state is active.

Value

Description

active

Specifies all active services.

inactive

Specifies all paused or stopped services.

all

Specifies all services.

bufsize=   BufferSize   Specifies the size (in bytes) of the enumeration buffer. The default size is 1024 bytes.

ri=   ResumeIndex   Specifies the index number at which to begin or resume the enumeration. The default is 0.

group=   GroupName   Specifies the service group to enumerate. The default is all groups.

/? Displays help at the command prompt.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

ServiceSecurityDescriptor   Specifies the service descriptor in SDDL.

/? Displays help at the command prompt.

Top of page 

Remarks

  • Without a space between a parameter and its value (that is, type= own, not type=own), the operation will fail.

  • The queryex operation displays the following information about a service: SERVICE_NAME (service's registry subkey name), TYPE, STATE (as well as states that are not available), WIN32_EXIT_B, SERVICE_EXIT_B, CHECKPOINT, WAIT_HINT, PID, and FLAGS.

  • The type= parameter can be used twice in some cases. The first appearance of the type= parameter specifies whether to query services, drivers, or all. The second appearance of the type= parameter specifies a type from the create operation to further narrow a query's scope.

  • When the display resulting from a queryex command exceeds the size of the enumeration buffer, a message similar to the following is displayed:

    Enum: more data, need 2130 bytes start resume at index 75

    To display the remaining queryex information, rerun queryex, setting bufsize= to be the number of bytes and ri= to the specified index. For example, the remaining output would be displayed by typing the following at the command line:

    sc queryex bufsize= 2130 ri= 75

Top of page 

Remarks

  • For more information about SDDL, see "Security Descriptor Definition Language" at the MSDN Online Library .

sc sdshow

Displays a service's security descriptor using SDDL.

Top of page 

Examples

The following examples show how you can use the sc queryex command:

sc queryex messenger 
sc queryex group= ""

sc querylock

Queries and displays the lock status for the Service Control Manager's database.

Top of page 

Syntax

sc [ServerNamesdshow ServiceName

Top of page 

Syntax

sc [ServerNamequerylock

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Parameter

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

/? Displays help at the command prompt.

sc sdset

Sets a service's security descriptor using Service Descriptor Definition Language (SDDL).

Top of page 

Remarks

  • For more information about SDDL, see "Security Descriptor Definition Language" at the MSDN Online Library .

Top of page 

Syntax

sc [ServerNamesdset ServiceName ServiceSecurityDescriptor

Top of page 

Examples

sc sdshow rpcss

sc start

Starts a service running.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

ServiceSecurityDescriptor   Specifies the service descriptor in SDDL.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamestart ServiceName [ServiceArguments]

Top of page 

Remarks

  • For more information about SDDL, see "Security Descriptor Definition Language" at the MSDN Online Library .

sc sdshow

Displays a service's security descriptor using SDDL.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

ServiceArguments   Specifies service arguments to pass to the service to be started.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamesdshow ServiceName

Top of page 

Examples

The following example shows how you can use the sc start command:

sc start tapisrv

sc stop

Sends a STOP control request to a service.

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Syntax

sc [ServerNamestop ServiceName

Top of page 

Remarks

  • For more information about SDDL, see "Security Descriptor Definition Language" at the MSDN Online Library .

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Examples

sc sdshow rpcss

sc start

Starts a service running.

Top of page 

Remarks

  • Not all services can be stopped.

Top of page 

Syntax

sc [ServerNamestart ServiceName [ServiceArguments]

Top of page 

Examples

The following example shows how you can use the sc stop command:

sc stop tapisrv

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

ServiceArguments   Specifies service arguments to pass to the service to be started.

/? Displays help at the command prompt.

Top of page 

Remarks

Examples

The following example shows how you can use the sc start command:

sc start tapisrv

sc stop

Sends a STOP control request to a service.

Top of page 

Formatting legend

Format

Meaning

Italic

Information that the user must supply

Bold

Elements that the user must type exactly as shown

Ellipsis (...)

Parameter that can be repeated several times in a command line

Between brackets ([])

Optional items

Between braces ({}); choices separated by pipe (|). Example: {even|odd}

Set of choices from which the user must choose only one

Courier font

Code or program output

 

 

 

参考网站: 备注:网站内容是翻译得来,源网站在上面 SC...

Syntax

sc [ServerNamestop ServiceName

Top of page 

Parameters

ServerName   Specifies the name of the remote server on which the service is located. The name must use the UNC format ("\myserver"). To run SC.exe locally, ignore this parameter.

ServiceName   Specifies the service name returned by the getkeyname operation.

/? Displays help at the command prompt.

Top of page 

Remarks

  • Not all services can be stopped.

Top of page 

Examples

The following example shows how you can use the sc stop command:

sc stop tapisrv

Top of page 

Remarks

Top of page 

Formatting legend

Format

Meaning

Italic

Information that the user must supply

Bold

Elements that the user must type exactly as shown

Ellipsis (...)

Parameter that can be repeated several times in a command line

Between brackets ([])

Optional items

Between braces ({}); choices separated by pipe (|). Example: {even|odd}

Set of choices from which the user must choose only one

Courier font

Code or program output

 

 

 

本文由澳门新浦京娱乐场网站发布于澳门新浦京娱乐场网站,转载请注明出处:极度指令之SC命令详解,Service的官方描述