0
サービスへの参照を取得するために、Win32_ServiceクラスでGet-WMIObjectを使用しています。私はその参照を変数に格納しています。私の質問は、サービスの状態を更新するために参照変数を使用するだけですか、別のGet-WMIObjectを実行する必要がありますか? get-WMIObjectメソッドとinterrogateserviceメソッドでの変数参照の使用
は現在、私はこれを使用します。$parameters = @{
Class = 'Win32_Service'
ComputerName = $server
Credential = $script:credentials
Filter = "Name='$ServiceName'"
}
$targetservice = Get-WMIObject @parameters
$results = $targetservice.startservice()
if($results.returnvalue -eq 0)
{
do
{
start-sleep -milliseconds 100
} until((Get-WMIObject @parameters).state -eq 'Running')
}
私はその2回目の呼び出しには、Get-WmiObjectコマンドをする必要がある、または私はそれはこのように行うことができますか?
$parameters = @{
Class = 'Win32_Service'
ComputerName = $server
Credential = $script:credentials
Filter = "Name='$ServiceName'"
}
$targetservice = Get-WMIObject @parameters
$results = $targetservice.startservice()
if($results.returnvalue -eq 0)
{
do
{
start-sleep -milliseconds 100
$targetservice.interrogateservice()
} until(($targetservice).state -eq 'Running')
}
私はinterrogateserviceは、サービスの状態を更新すると仮定されて知っているが、何らかの理由で、あなたが思うだろうとして機能していないと、ループ内で立ち往生。
そうする必要があるとは思えますが、それはそれが何であるかと思います。ありがとう – todd1215