I’ve been asked the several times in the past by colleagues about what is the best way to remotely configure the Startup type and Service status of a Windows desktop or server so I thought it would be good to write a blog post so I could direct these questions to.
The method I use to remotely configure a service is the sc command as described in the following TechNet article:
https://technet.microsoft.com/en-us/library/bb490995.aspx
#1 – Review a service’s properties (Startup type)
To review a remote computer’s service’s property, execute the following:
sc \\<computerName> qc wsearch
The following is an example of the output:
C:\>sc \\tmrsvd-048 qc wsearch
[SC] QueryServiceConfig SUCCESS
SERVICE_NAME: wsearch
TYPE : 10 WIN32_OWN_PROCESS
START_TYPE : 2 AUTO_START (DELAYED)
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : C:\Windows\system32\SearchIndexer.exe /Embedding
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : Windows Search
DEPENDENCIES : RPCSS
SERVICE_START_NAME : LocalSystem
C:\>
Note that the above output would tell you the Startup Type.
#2 – Review a service’s status (Service status)
To review a remote computer’s service’s status, execute the following:
sc \\<computerName> query wsearch
The following is an example of the output:
C:\>sc \\tmrsvd-024 query wsearch
SERVICE_NAME: wsearch
TYPE : 10 WIN32_OWN_PROCESS
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
C:\>
Note that the above output would tell you the Service status (whether it is running or stopped).
#3 – Configure a service’s Startup Type
To configure a remote computer’s service’s Startup Type, execute the following:
sc \\<computerName> config wsearch start=<startup Type>
The startup type options are as follows:
- auto
- demand
- disabled
- delayed-auto
**Note that demand is manual.
More information about the switches can be found in the following TechNet article:
https://technet.microsoft.com/en-us/library/cc990290(v=ws.11).aspx
The following is an example of the output:
C:\>sc \\tmrsvd-075 config wsearch start=delayed-auto
[SC] ChangeServiceConfig SUCCESS
#4 – Starting or stopping a service
To start or stop a remote computer’s service, execute the following:
sc \\<computerName> <start or stop> wsearch
More information about the switches can be found in the following TechNet article:
https://technet.microsoft.com/en-us/library/cc742126(v=ws.11).aspx
The following is an example of the output:
C:\>sc \\tmrsvd-075 stop wsearch
SERVICE_NAME: wsearch
TYPE : 10 WIN32_OWN_PROCESS
STATE : 3 STOP_PENDING
(NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x1
WAIT_HINT : 0x7530
C:\>
C:\>sc \\tmrsvd-075 start wsearch
SERVICE_NAME: wsearch
TYPE : 10 WIN32_OWN_PROCESS
STATE : 2 START_PENDING
(NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x4
WAIT_HINT : 0x7530
PID : 4172
FLAGS :
C:\>
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
With the commands above, we can create a batch file to bulk configure a set of computers as such:
rem --Used to set service to auto delayed start and then start the service--
sc \\computer-071 config wsearch start=delayed-auto
sc \\computer-071 start wsearch
sc \\computer-072 config wsearch start=delayed-auto
sc \\computer-072 start wsearch
sc \\computer-073 config wsearch start=delayed-auto
sc \\computer-073 start wsearch
sc \\computer-074 config wsearch start=delayed-auto
sc \\computer-074 start wsearch
sc \\computer-075 config wsearch start=delayed-auto
sc \\computer-075 start wsearch
rem --Used to check service--
sc \\computer-024 query wsearch
sc \\computer-024 qc wsearch
sc \\computer-075 query wsearch
sc \\computer-075 qc wsearch
Hope this helps anyone looking for an easy way to configure a remote computer’s service.