Establecer servicio StartType en Automático - Retrasado

11

Utilizando Set-Service, puedo cambiar la cantidad StartTypede mis servicios entre los valores aceptados de Boot, System, Automatic, Manual, Disabled. Utilizando services.msc, puedo configurar algunos servicios para iniciar con una prioridad de Automatic (Delayed Start). Sin embargo, Get-Serviceaún informa de estos servicios de inicio retrasado StartType : Automaticy Set-Serviceerrores al intentar establecer estos valores.

¿Puedo configurar esta propiedad a través de powershell? ¿O estoy limitado a la interfaz de usuario o GPO ?

Peter Vandivier
fuente

Respuestas:

10

No hay forma directa en PowerShell, solo use sc

sc.exe config NameOfTheService start= delayed-auto 

en versiones anteriores de Windows necesitabas un espacio después del signo igual, ya no parece ser necesario, pero aún funciona.

También puede cambiar las claves de registro:

HKLM\SYSTEM\CurrentControlSet\Services\NameOfTheService\Start = 2
HKLM\SYSTEM\CurrentControlSet\Services\NameOfTheService\DelayedAutostart = 1
Peter Hahndorf
fuente
llamar sc.exedirectamente facilita la canalización del resultado para su posterior manejo. también, esta respuesta me dio la idea de consultar directamente el registro directamente Get-ItemPropertypara determinar si el servicio es DelayedAutostart.
Peter Vandivier el
6

No hay una manera simple de hacerlo con cmdlets de PowerShell. En mi opinión, la forma más fácil es usar sc.exe. Aquí hay una forma de hacer eso:

$myArgs = 'config "{0}" start=delayed-auto' -f 'TheServiceName'
Start-Process -FilePath sc.exe -ArgumentList $myArgs
EBGreen
fuente
Mi versión requiere un espacio después del signo igual
Michael Freidgeim