Конечно, случай достаточно редкий, но случается: виртуальная машина Hyper-V впадает в апатию при переходе из одного состояния в другое. Любые попытки выключить или завершить работу конкретной виртуальной машины приводят к ошибке и совершенно ничего с этим нельзя поделать.
По крайней мере, штатными средствами.
Можно попробовать остановить процесс зависшей виртуальной машины с помощью PowerShell.
При запуске скрипт спросит имя виртуальной машины и дальше сделает всё сам. Обработчик ошибок не прикручивал. Скрипт будет ждать реакции пользователя по факту выполнения.
### Заголовок скрипта ###
[System.Console]::Title = "Перезапуск зависшей виртуальной машины"
### Запрос имени виртуальной машины ###
$VMNAME = Read-Host "Введите имя виртуальной машины"
### Получение ID виртуальной машины ###
$VMID = (Get-VM $VMNAME).ID
### Поиск процесса экземпляра виртуальной машины ###
$VMWP = (Get-WmiObject Win32_Process | Where-Object {$_.Name -match 'VMWP' -and $_.CommandLine -match $VMID})
### Остановка процесса виртуальной машины ###
Stop-Process ($VMWP.ProcessId) –Force
### Ожидание действия от пользователя ###
Read-Host "Нажмите Enter для выхода..."
Скрипт следует выполнять только с правами администратора!
Вместо P.S.: ну, а если Вы не любите хирургические методы решения задач — можно просто перезапустить службу управления виртуальными машинами одной командой:
Get-Service vmms | Restart-Service
Данный функционал внедрён в RDPman.