Я пытаюсь создать приложение для перезапуска виртуальных машин в Hyper V на сервере 2012 У меня была каждая VM в перезапуске списка, но я хочу ее адаптировать, чтобы выключить машину и затем снова. Прокомментированный код - это рабочий принудительный resart. Спасибо заранее.Перезапустить машину Hyper V с помощью командлета powershell с C#
public async static void RestartAllVMs(List<VM> vmList, int timeDelay)
{
PowerShell ps = PowerShell.Create();
foreach (VM vm in vmList)
{
/*//Create PowerShell object
PowerShell ps = PowerShell.Create();
ps.AddCommand("Restart-VM");
ps.AddArgument(vm.vmName);
ps.AddParameter("Force");
ps.Invoke();
await Task.Delay(timeDelay * 1000);*/
//Create PowerShell object
//I want to run from here down instead of just restarting the code doesn't work and no errors are thrown.
ps.AddCommand("Stop-VM");
ps.AddArgument(vm.vmName);
ps.AddCommand("Start-Sleep");
ps.AddParameter("s", 10);
ps.AddCommand("Start-VM");
ps.AddArgument(vm.vmName);
ps.AddCommand("Start-Sleep");
ps.AddParameter("m", 500);
ps.Invoke();
await Task.Delay(timeDelay * 1000);
}
}
В чем вопрос? – DavidG
Это все еще не вопрос. и если у вас есть дополнительная информация, пожалуйста, отредактируйте свой вопрос. Код в комментариях не читается. – DavidG
из Stop vm cmd, ошибки не выбрасываются, последовательность resart cmd в комментированном коде действительно работает. однако я хочу использовать последовательность из остановки vm cmd –