SC
This page is from Microsoft
Updated: January 21, 2005
Communicates with the Service Controller and installed services.
SC.exe retrieves and sets control information about services.
You can use SC.exe for testing and debugging service programs.
Service properties stored in the registry can be set to control
how service applications are started at boot time and run as
background processes. SC.exe parameters can configure a specific
service, retrieve the current status of a service, as well as
stop and start a service. You can create batch files that call
various SC.exe commands to automate the startup or shutdown
sequence of services. SC.exe provides capabilities similar to
Services in the Administrative Tools item in Control Panel.
For the command syntax, click any of the following sc
commands:
Indicates whether the last boot should be saved as the
last-known-good configuration.
Syntax
Sc [ServerName] boot [{bad | OK}]
Parameters
ServerName
Specifies the name of the remote server on which the
service is located. The name must use the Universal
Naming Convention (UNC) format ("\\myserver"). To
run SC.exe locally, ignore this parameter.
[{bad | OK}]
Specifies whether the last boot was bad or whether
it should be saved as the last-known-good boot
configuration.
/?
Displays help at the command prompt.
Examples
The following examples show how you can use the sc boot
command:
sc boot ok
sc boot bad
Modifies the value of a service's entries in the registry and in
the Service Control Manager's database.
Syntax
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]
Parameters
ServerName
Specifies the name of the remote server on which the
service is located. The name must use the Universal
Naming Convention (UNC) format ("\\myserver"). To
run SC.exe locally, ignore this parameter.
ServiceName
Specifies the service name returned by the
getkeyname operation.
type= {own | share | kernel
| filesys | rec | adapt |
interacttype= {own | share}}
Specifies the service type.ValueDescriptionownThe
service runs in its own process. It does not share
an executable file with other services. This is the
default.shareThe service runs as a shared
process. It shares an executable file with other
services.kernelDriver.filesysFile
system driver.recFile system-recognized
driver (identifies file systems used on the
computer).adaptAdapter driver (identifies
hardware items such as keyboard, mouse, and disk
drive).interactThe service can interact with
the desktop, receiving input from users. Interactive
services must be run under the LocalSystem account.
This type must be used in conjunction with type=
own or type= shared (for example,
type= interact type= own). Using
type= interact by itself will generate an
invalid parameter error.
start= {boot | system | auto
| demand | disabled}
Specifies the start type for the service.
ValueDescriptionbootA device driver that is
loaded by the boot loader.systemA device
driver that is started during kernel initialization.autoA
service that automatically starts each time the
computer is restarted and runs even if no one logs
on to the computer.demandA service that must
be manually started. This is the default value if
start= is not specified.disabledA service
that cannot be started. To start a disabled service,
change the start type to some other value.
error= {normal | severe |
critical | ignore}
Specifies the severity of the error if the service
fails to start during boot.ValueDescriptionnormalThe
error is logged and a message box is displayed
informing the user that a service has failed to
start. Startup will continue. This is the default
setting.severeThe error is logged (if
possible). The computer attempts to restart with the
last-known-good configuration. This could result in
the computer being able to restart, but the service
may still be unable to run.criticalThe error
is logged (if possible). The computer attempts to
restart with the last-known-good configuration. If
the last-known-good configuration fails, startup
also fails, and the boot process halts with a Stop
error.ignoreThe error is logged and startup
continues. No notification is given to the user
beyond recording the error in the Event Log.
binpath=BinaryPathName
Specifies a path to the service binary file.
group=LoadOrderGroup
Specifies the name of the group of which this
service is a member. The list of groups is stored in
the registry in the HKLM\System\CurrentControlSet\Control\ServiceGroupOrder
subkey. The default is null.
tag= {yes | no}
Specifies whether or not to obtain a TagID from the
CreateService call. Tags are only used for
boot-start and system-start drivers.
depend= dependencies
Specifies the names of services or groups which must
start before this service. The names are separated
by forward slashes (/).
obj= {AccountName | ObjectName}
Specifies a name of an account in which a service
will run, or specifies a name of the Windows driver
object in which the driver will run. The default is
LocalSystem.
displayname=DisplayName
Specifies a friendly, meaningful name that can be
used in user-interface programs to identify the
service to users. For example, the subkey name of
one service is wuauserv, which is not be helpful to
the user, and the display name is Automatic Updates.
password=Password
Specifies a password. This is required if an account
other than the LocalSystem account is used.
/?
Displays help at the command prompt.
Remarks
- Without a space between a parameter and its value (for
example, type= own, not type=own), the operation
will fail.
Examples
The following example shows how you can use the sc config
command:
sc config NewService binpath= "ntsd -d
c:\windows\system32\NewServ.exe"
Sends a CONTINUE control request to a service in order to resume
a paused service.
Syntax
Sc [ServerName] continue [ServiceName]
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.
Remarks
- Use the continue operation to resume a paused
service.
Examples
The following example shows how you can use the sc continue
command:
sc continue tapisrv
Sends a CONTROL B to a service.
Syntax
sc [ServerName] control [ServiceName]
[{paramchange | netbindadd | netbindremove
| netbindenable | netbinddisable |
UserDefinedControlB}]
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.
{paramchange | netbindadd |
netbindremove | netbindenable |
netbinddisable | UserDefinedControlB}
Specifies a control to send to a service.
/?
Displays help at the command prompt.
Creates a subkey and entries for the service in the registry and
in the Service Control Manager's database.
Syntax
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]
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.
type= {own| share | kernel
| filesys | rec| adapt|
interacttype= {own | share}}
Specifies the service type. The default is type=
own.ValueDescriptionownThe service runs
in its own process. It does not share an executable
file with other services. This is the default.shareThe
service runs as a shared process. It shares an
executable file with other services.kernelDriver.filesysFile
system driver.recFile system recognized
driver (identifies file systems used on the
computer).interactThe service can interact
with the desktop, receiving input from users.
Interactive services must be run under the
LocalSystem account. This type must be used in
conjunction with type= own or type= shared
(that is, type= interact type= own). Using
type= interact by itself will generate an
invalid parameter error.
start= {boot | system | auto
| demand | disabled}
Specifies the start type for the service. The
default start is start= demand.bootA
device driver that is loaded by the boot loader.systemA
device driver that is started during kernel
initialization.autoA service that
automatically starts each time the computer is
restarted and runs even if no one logs on to the
computer.demandA service that must be
manually started. This is the default value if
start= is not specified.disabledA service
that cannot be started. To start a disabled service,
change the start type to some other value.
error= {normal | severe |
critical | ignore}
Specifies the severity of the error if the service
fails to start during boot. The default is error=
normal.normalThe error is logged and a
message box is displayed informing the user that a
service has failed to start. Startup will continue.
This is the default setting.severeThe error
is logged (if possible). The computer attempts to
restart with the last-known-good configuration. This
could result in the computer being able to restart,
but the service may still be unable to run.criticalThe
error is logged (if possible). The computer attempts
to restart with the last-known-good configuration.
If the last-known-good configuration fails, startup
also fails, and the boot process halts with a Stop
error.ignoreThe error is logged and startup
continues. No notification is given to the user
beyond recording the error in the Event Log.
binpath=BinaryPathName
Specifies a path to the service binary file. There
is no default for binpath= and this string
must be supplied.
group=LoadOrderGroup
Specifies the name of the group of which this
service is a member. The list of groups is stored in
the registry in the HKLM\System\CurrentControlSet\Control\ServiceGroupOrder
subkey. The default is null.
tag= {yes | no}
Specifies whether or not to obtain a TagID from the
CreateService call. Tags are only used for
boot-start and system-start drivers.
depend=dependencies
Specifies the names of services or groups that must
start before this service. The names are separated
by forward slashes (/).
obj= {AccountName | ObjectName}
Specifies a name of an account in which a service
will run, or specifies a name of the Windows driver
object in which the driver will run.
displayname=DisplayName
Specifies a friendly name that can be used by
user-interface programs to identify the service.
password=Password
Specifies a password. This is required if an account
other than LocalSystem is used.
/?
Displays help at the command prompt.
Remarks
- Without a space between a parameter and its value (that is,
type= own, not type=own), the operation will fail.
Examples
The following examples show how you can use the sc create
command:
sc \\myserver create NewService binpath=
c:\windows\system32\NewServ.exe
sc create NewService binpath=
c:\windows\system32\NewServ.exe type= share start= auto depend=
"+TDI Netbios"
Deletes a service subkey from the registry. If the service is
running or if another process has an open handle to the service,
then the service is marked for deletion.
Syntax
Sc [ServerName] delete [ServiceName]
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.
Remarks
- Use Add or Remove Programs to delete DHCP, DNS, or any other
built-in operating system services. Add or Remove Programs will
not only remove the registry subkey for the service, but it will
also uninstall the service and delete any shortcuts to the
service.
Examples
The following example shows how you can use the sc delete
command:
sc delete newserv
Sets the description string for a service.
Syntax
Sc [ServerName] description [ServiceName]
[Description]
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.
Examples
The following example shows how you can use the sc
description command:
sc description newserv "Runs
quality of service control."
Lists the services that cannot run unless the specified service
is running.
Syntax
Sc [ServerName] enumdepend [ServiceName]
[BufferSize]
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.
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.
Examples
The following examples show how you can use the sc enumdepend
command:
sc enumdepend rpcss 5690
sc enumdepend tapisrv
Specifies what action to take upon failure of the service.
Syntax
Sc [ServerName] failure [ServiceName]
[reset= ErrorFreePeriod] [reboot=
BroadcastMessage] [command= CommandLine] [actions=
FailureActionsAndDelayTime]
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: run,
restart, 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.
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.exeDrive:\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.
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:\windows\services\restart_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
Gets the display name associated with a particular service.
Syntax
Sc [ServerName] getdisplayname [ServiceName]
[BufferSize]
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.
Examples
The following examples show how you can use the sc
getdisplayname command:
sc getdisplayname clipsrv
sc getdisplayname tapisrv
sc getdisplayname sharedaccess
Gets the key name associated with a particular service, using
the display name as input.
Syntax
sc [ServerName] getkeyname [ServiceDisplayName]
[BufferSize]
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.
Remarks
- If the ServiceDisplayName contains spaces, use
quotation marks around the text (that is, "Service Display Name").
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
Sends an INTERROGATE control request to a service.
Syntax
Sc [ServerName] interrogate [ServiceName]
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.
Remarks
- Sending INTERROGATE to a service causes the service to
update its status with the Service Control Manager.
Examples
The following examples show how you can use the sc
interrogate command:
sc interrogate sharedaccess
sc interrogate rpcss
Locks the Service Control Manager's database.
Syntax
sc [ServerName] lock
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.
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 typing u. You can also stop the process from which you
locked the database.
Examples
The following example shows how you can use the sc lock
command:
sc lock
Sends a PAUSE control request to a service.
Syntax
Sc [ServerName] pause [ServiceName]
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.
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.
Examples
The following example shows how you can use the sc pause
command:
sc pause tapisrv
Queries the configuration information for a service.
Syntax
Sc [ServerName] qc [ServiceName] [BufferSize]
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.
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 qcServiceName
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.
Examples
The following examples show how you can use the sc qc
command:
sc qc \\myserver newsrvice
sc qc rpcss 248
Displays the description string of a service.
Syntax
Sc [ServerName] qdescription [ServiceName]
[BufferSize]
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.
Examples
The following examples show how you can use the sc
qdescription command:
sc qdescription rpcss
sc qdescription rpcss 138
Displays the actions that will be performed if the specified
service fails.
Syntax
Sc [ServerName] qfailure [ServiceName]
[BufferSize]
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.
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.
Examples
The following examples show how you can use the sc qfailure
command:
sc qfailure rpcss
sc qfailure rpcss 20
Obtains and displays information about the specified service,
driver, type of service, or type of driver.
Syntax
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]
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.ValueDescriptiondriverSpecifies
that only drivers are enumerated.serviceSpecifies
that only services are enumerated.allSpecifies
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.ValueDescriptionownThe service runs
in its own process. It does not share an executable
file with other services. This is the default.shareThe
service runs as a shared process. It shares an
executable file with other services.interactThe
service can interact with the desktop, receiving
input from users. Interactive services must be run
under the LocalSystem account.kernelDriver.filesysFile
system driver.
state= {active | inactive |
all}
Specifies the started state of the service for which
to enumerate. The default state is active.
ValueDescriptionactiveSpecifies all active
services.inactiveSpecifies all paused or
stopped services.allSpecifies 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.
Remarks
- 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
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
Obtains and displays extended information about the specified
service, driver, type of service, or type of driver.
Syntax
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]
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.ValueDescriptiondriverSpecifies
that only drivers are enumerated.serviceSpecifies
that only services are enumerated.allSpecifies
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.ValueDescriptionownThe service runs
in its own process. It does not share an executable
file with other services. This is the default.shareThe
service runs as a shared process. It shares an
executable file with other services.interactThe
service can interact with the desktop, receiving
input from users. Interactive services must be run
under the LocalSystem account.kernelDriver.filesysFile
system driver.
state= {active | inactive |
all}
Specifies the started state of the service for which
to enumerate. The default state is active.
ValueDescriptionactiveSpecifies all active
services.inactiveSpecifies all paused or
stopped services.allSpecifies 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.
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
Examples
The following examples show how you can use the sc queryex
command:
sc queryex messenger
sc queryex group= ""
Queries and displays the lock status for the Service Control
Manager's database.
Syntax
Sc [ServerName] querylock
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.
Sets a service's security descriptor using Service Descriptor
Definition Language (SDDL).
Syntax
Sc [ServerName] sdset ServiceName
ServiceSecurityDescriptor
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.
Remarks
- For more information about SDDL, see Security Descriptor
Definition Language at the
Microsoft Web site
.
Displays a service's security descriptor using SDDL.
Syntax
Sc [ServerName] sdshow ServiceName
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.
Remarks
- For more information about SDDL, see Security Descriptor
Definition Language at the
Microsoft Web site
Examples
sc sdshow rpcss
Starts a service running.
Syntax
Sc [ServerName] start ServiceName [ServiceArguments]
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.
Examples
The following example shows how you can use the sc start
command:
sc start tapisrv
Sends a STOP control request to a service.
Syntax
Sc [ServerName] stop ServiceName
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.
Caution
- Incorrectly editing the registry may severely damage
your system. Before making changes to the registry, you
should back up any valued data on the computer
Remarks
- Not all services can be stopped.
Examples
The following example shows how you can use the sc stop
command:
sc stop tapisrv
Formatting legend
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 |
|
|