Jun 082009
 

SC is a simple command line utility that can be used to communicate, control or query the Service Control Manager in Windows. “sc” should work in Windows XP, Windows Vista, Windows 7, Windows Server 2003/2008. “sc” is quite powerful that it can control services locally and on remote systems. “sc” can query details, start,stop, configure services that can all be done from the Service Control Manager (services.msc) ideally making it a great tool to include in scripts or for command line junkies like me.


In its simplest form, SC can query the Service Control Manager for the services and its configurations.

From the command line type

C:\Windows\system32>sc query

This should query all services and display details include Service Name (ex: BITS), the Service Display Name (Background Intelligent Transfer Service) as seen in services.msc, the service startup types and current running status.

To paginate the output,

C:\Windows\system32>sc query | more

To copy the output to clipboard to later copy it to an external program (say notepad)

C:\Windows\system32>sc query | clip

If you know the specific name, you can query all the service details or specific information like the Display name:

C:\Windows\system32>sc query BthServ

SERVICE_NAME: BthServ
TYPE               : 20  WIN32_SHARE_PROCESS
STATE              : 4  RUNNING
(STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE    : 0  (0×0)
SERVICE_EXIT_CODE  : 0  (0×0)
CHECKPOINT         : 0×0
WAIT_HINT          : 0×0

C:\Windows\system32>sc GetDisplayName BITS
[SC] GetServiceDisplayName SUCCESS
Name = Background Intelligent Transfer Service

You can start stop services as follows:

C:\Windows\system32>sc stop BthServ

SERVICE_NAME: BthServ
TYPE               : 20  WIN32_SHARE_PROCESS
STATE              : 3  STOP_PENDING
(STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE    : 0  (0×0)
SERVICE_EXIT_CODE  : 0  (0×0)
CHECKPOINT         : 0×0
WAIT_HINT          : 0×0

C:\Windows\system32>sc start BthServ

SERVICE_NAME: BthServ
TYPE               : 20  WIN32_SHARE_PROCESS
STATE              : 2  START_PENDING
(NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE    : 0  (0×0)
SERVICE_EXIT_CODE  : 0  (0×0)
CHECKPOINT         : 0×0
WAIT_HINT          : 0x7d0
PID                : 384
FLAGS              :

To get a complete list of options

C:\Windows\system32>sc ?

ERROR:  Unrecognized command

DESCRIPTION:
SC is a command line program used for communicating with the
Service Control Manager and services.
USAGE:
sc <server> [command] [service name] <option1> <option2>…

The option <server> has the form “\\ServerName”
Further help on commands can be obtained by typing: “sc [command]”
Commands:
query———–Queries the status for a service, or
enumerates the status for types of services.
queryex———Queries the extended status for a service, or
enumerates the status for types of services.
start———–Starts a service.
pause———–Sends a PAUSE control request to a service.
interrogate—–Sends an INTERROGATE control request to a service.
continue——–Sends a CONTINUE control request to a service.
stop————Sends a STOP request to a service.
config———-Changes the configuration of a service (persistent).
description—–Changes the description of a service.
failure———Changes the actions taken by a service upon failure.
failureflag—–Changes the failure actions flag of a service.
sidtype———Changes the service SID type of a service.
privs———–Changes the required privileges of a service.
qc————–Queries the configuration information for a service.
qdescription—-Queries the description for a service.
qfailure——–Queries the actions taken by a service upon failure.
qfailureflag—-Queries the failure actions flag of a service.
qsidtype——–Queries the service SID type of a service.
qprivs———-Queries the required privileges of a service.
delete———-Deletes a service (from the registry).
create———-Creates a service. (adds it to the registry).
control———Sends a control to a service.
sdshow———-Displays a service’s security descriptor.
sdset———–Sets a service’s security descriptor.
showsid———Displays the service SID string corresponding to an ar
bitrary name.
GetDisplayName–Gets the DisplayName for a service.
GetKeyName——Gets the ServiceKeyName for a service.
EnumDepend——Enumerates Service Dependencies.

The following commands don’t require a service name:
sc <server> <command> <option>
boot————(ok | bad) Indicates whether the last boot should
be saved as the last-known-good boot configuration
Lock————Locks the Service Database
QueryLock——-Queries the LockStatus for the SCManager Database
EXAMPLE:
sc start MyService

Would you like to see help for the QUERY and QUERYEX commands? [ y | n ]:

Incoming search terms:

 Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>