ITEEDU

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、TA、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 

未完见下页