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