サービスのStartTypeを自動に設定-遅延


11

を使用してSet-ServiceStartTypeサービスのをの許容値の間で変更できますBoot, System, Automatic, Manual, Disabled。を使用するとservices.msc、一部のサービスをPriorityで起動するように設定できますAutomatic (Delayed Start)。ただし、Get-Serviceこれらの遅延開始サービスは引き続きとして報告されStartType : AutomaticSet-Serviceこれらの値を設定しようとするとエラーになります。

PowerShellを介してこのプロパティを設定できますか?それとも、UI またはGPOに制限されていますか?

回答:


5

PowerShell 6.0では、オプションStartTypeがAutomaticに追加されました-Set-Serviceコマンドレットで遅延

例:Set-Service -Name "Testservice" –StartupType "AutomaticDelayedStart"

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/set-service?view=powershell-6


Get-Serviceただし、これはまだ「自動」と報告されています。先端をありがとう!最後に、PSCoreでの睡眠をやめるように私に納得させました
Peter Vandivier

10

PowerShellでは直接的な方法はなく、使用するだけです sc

sc.exe config NameOfTheService start= delayed-auto 

古いバージョンのWindowsでは、等号の後にスペースが必要でした。これはもう必要ないようですが、まだ機能します。

レジストリキーを変更することもできます。

HKLM\SYSTEM\CurrentControlSet\Services\NameOfTheService\Start = 2
HKLM\SYSTEM\CurrentControlSet\Services\NameOfTheService\DelayedAutostart = 1

sc.exe直接呼び出すと、後で処理するために結果をパイプ処理するのが簡単になります。同様に-この回答はGet-ItemProperty、サービスがDelayedAutostartであるかどうかを判断するためにレジストリを直接クエリするというアイデアを私に与えました。
Peter Vandivier

6

powershellコマンドレットを使用してそれを行う簡単な方法はありません。私の意見では、最も簡単な方法はsc.exeを使用することです。これを行う1つの方法を次に示します。

$myArgs = 'config "{0}" start=delayed-auto' -f 'TheServiceName'
Start-Process -FilePath sc.exe -ArgumentList $myArgs

私のバージョンでは、等号の後にスペースが必要です
Michael Freidgeim
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.