Setel layanan StartType ke Otomatis - Tertunda

11

Dengan menggunakan Set-Service, saya dapat mengubah StartTypelayanan saya antara nilai yang diterima dari Boot, System, Automatic, Manual, Disabled. Dengan menggunakan services.msc, saya dapat mengatur beberapa layanan untuk memulai dengan Prioritas dari Automatic (Delayed Start). Namun, Get-Servicemasih melaporkan layanan mulai-tertunda ini sebagai StartType : Automatic, dan Set-Servicekesalahan keluar ketika mencoba untuk menetapkan nilai-nilai ini.

Apakah saya dapat mengatur properti ini melalui PowerShell? Atau apakah saya terbatas pada UI atau GPO ?

Peter Vandivier
sumber

Jawaban:

10

Tidak ada cara langsung di PowerShell, cukup gunakan sc

sc.exe config NameOfTheService start= delayed-auto 

di versi Windows yang lebih lama Anda membutuhkan ruang setelah tanda sama dengan, ini tampaknya tidak diperlukan lagi tetapi masih berfungsi.

Anda juga dapat mengubah kunci registri:

HKLM\SYSTEM\CurrentControlSet\Services\NameOfTheService\Start = 2
HKLM\SYSTEM\CurrentControlSet\Services\NameOfTheService\DelayedAutostart = 1
Peter Hahndorf
sumber
panggilan sc.exelangsung membuatnya mudah untuk menyalurkan hasilnya untuk penanganan nanti. juga - jawaban ini memberi saya ide untuk hanya meminta registri secara langsung dengan Get-ItemPropertyuntuk menentukan apakah layanan ini DelayedAutostart.
Peter Vandivier
6

Tidak ada cara sederhana untuk melakukannya menggunakan cmdlet PowerShell. Menurut pendapat saya, cara termudah adalah menggunakan sc.exe. Inilah salah satu cara untuk melakukannya:

$myArgs = 'config "{0}" start=delayed-auto' -f 'TheServiceName'
Start-Process -FilePath sc.exe -ArgumentList $myArgs
EBGreen
sumber
Versi saya memerlukan spasi setelah tanda sama dengan
Michael Freidgeim