Я использую «новую» библиотеку System.Management.Infrastructure
и хочу выполнить несколько методов. Результат метода ниже 4096, что означает, что Работа началась. Как мне дождаться или проверить, изменилось ли оно на 0? У меня та же проблема с применением, удалением и созданием снимков.
Есть ли общий способ проверить «статус»?
public async Task RequestStateChange(PublicServerInfo publicServer, string action)
{
CimSession session = GetCimSession(publicServer.HostName);
CimInstance vm = session.QueryInstances(hvNamespace, "WQL", "SELECT * FROM Msvm_ComputerSystem WHERE Name='" + publicServer.MachineID + "'").FirstOrDefault();
CimMethodParametersCollection parameters = new CimMethodParametersCollection();
if (action.ToLower() == "start")
{
parameters.Add(CimMethodParameter.Create("RequestedState", (UInt16)2, CimFlags.In));
}
else if (action.ToLower() == "shutdown")
{
parameters.Add(CimMethodParameter.Create("RequestedState", (UInt16)4, CimFlags.In));
}
CimMethodResult result = session.InvokeMethod(hvNamespace, vm, "RequestStateChange", parameters);
}