Есть ли способ получить список процессов, запущенных на локальной виртуальной машине? - PullRequest
2 голосов
/ 11 июля 2011

У меня есть виртуальная машина под управлением Windows 7, которая называется «VirtualXP-12345».Я пытался использовать

    System.Diagnostics.Process.GetProcesses("VirtualXP-12345")

с хост-машины, но это не работает.Я просто получаю InvalidOperationException («Не удалось подключиться к удаленной машине.»).

Я пытаюсь написать программу, которая проверяет, выполняется ли конкретный процесс на ПК, включая все виртуальные машины, также работающие на этоммашина.Он работает нормально, используя Pocess.GetProcesses () на локальной не виртуальной машине, но мне нужно определить, выполняется ли процесс где-нибудь на локальной машине, так как его необходимо завершить, чтобы обновить используемые файлы.

Ответы [ 3 ]

1 голос
/ 11 июля 2011

По умолчанию вы не можете подключиться к машине с Windows 7 и получить список процессов. Попробуйте отключить встроенное программное обеспечение в своей виртуальной машине и посмотрите, поможет ли это.

1 голос
/ 11 июля 2011

Согласно документации, вы используете правильный вызов API для получения процесса на другой машине (виртуальной или нет).

Возвращаемая ошибка указывает на то, что это проблема с подключением. Чтобы это исправить, вы должны начать с проверки:

  • Ваш хост-компьютер может сопоставить имя с IP-адресом (проверка с помощью ping).
  • У вас есть базовое IP-соединение (тестирование с помощью ping).
  • Ваша виртуальная машина разрешает входящие соединения через порт 445, который является RPC через TCP / IP и используется всеми основными сетевыми функциями Windows. (Простой тест - нажать Пуск-> Выполнить и набрать \\virtualxp-12345)
0 голосов
/ 11 июля 2011

Не совсем уверен, но я думаю, что вы не можете, так как в основном виртуальные машины похожи на другую машину в вашей локальной сети.Вам нужно, чтобы «кто-то сотрудничал» с вами на его стороне.Другими словами, какой-то инструмент, который вы можете вызвать через сеть и получить список процессов.

Фактически во время настройки вашей машины вы устанавливаете тип сети Bridge / NAT / ..., если вы помните, точно так же, как если бы выхотел бы настроить LAN.

С уважением.

...