Set-Service
を使用すると、サービスのStartType
をBoot, System, Automatic, Manual, Disabled
の許容値の間で変更できます。 services.msc
を使用すると、いくつかのサービスをPriorityで起動するように設定できます Automatic (Delayed Start)。ただし、Get-Service
は引き続きこれらの遅延開始サービスをStartType : Automatic
として報告し、これらの値を設定しようとするとSet-Service
エラーが出力されます。
PowerShellを介してこのプロパティを設定できますか?それとも、UI またはGPO に制限されていますか?
PowerShell 6.0では、オプションStartTypeが自動に追加されました-Set-Serviceコマンドレットで遅延
例:Set-Service -Name "Testservice" –StartupType "AutomaticDelayedStart"
PowerShellでは直接の方法はなく、sc
を使用するだけです
sc.exe config NameOfTheService start= delayed-auto
古いバージョンのWindowsでは、等号の後にスペースが必要でした。これはもう必要ないようですが、まだ機能します。
レジストリキーを変更することもできます。
HKLM\SYSTEM\CurrentControlSet\Services\NameOfTheService\Start = 2
HKLM\SYSTEM\CurrentControlSet\Services\NameOfTheService\DelayedAutostart = 1
Powershellコマンドレットを使用してそれを行う簡単な方法はありません。私の意見では、最も簡単な方法はsc.exeを使用することです。これを行う1つの方法を次に示します。
$myArgs = 'config "{0}" start=delayed-auto' -f 'TheServiceName'
Start-Process -FilePath sc.exe -ArgumentList $myArgs