Автоматизировать Virtual PC 2007 с помощью PowerShell? - PullRequest
11 голосов
/ 09 июня 2009

Это в основном дубликат этого вопроса , но принятым ответом было "нет", и я хотел бы оставить этот вопрос открытым, пока не получу фактический ответ вместо того, чтобы принять "НЕТ" и сдаться.

Стивен Роуз сказал мне через Twitter DM использовать PowerShell для запуска и остановки виртуальных машин Virtual PC и выполнять такие действия, как запуск установок, автоматическое обновление и сканирование на вирусы, но он еще не ответил на мой запрос о любые ссылки на ресурсы, которые описывают, как это сделать.

Я начал изучать PowerShell, но не могу понять, как получить или работать с любой информацией из списка виртуальных машин в Virtual PC.

Редактировать: Windows Virtual PC (режим Windows 7 XP) - это не то же самое, что Virtual PC 2007. Я использую Windows 7 в качестве хоста, но все еще работаю использование Virtual PC 2007, потому что мне нужно поддерживать возможность запуска гостевых машин на хостах Vista или XP, на которых не будет установлен новый Windows Virtual PC. Я ненадолго установил Windows Virtual PC, чтобы проверить это, и мне пришлось сделать несколько преобразований в моих виртуальных образах. Предложение @ x0n ($vpc = new-object -com virtualpc.application) приводит к следующей ошибке в моей системе:

New-Object : Cannot load COM type virtualpc.application.
At line:1 char:18
+ $vpc = new-object <<<<  -com virtualpc.application
    + CategoryInfo          : InvalidType: (:) [New-Object], PSArgumentException
    + FullyQualifiedErrorId : CannotLoadComObjectType,Microsoft.PowerShell.Commands.NewObjectCommand

Редактировать 2: Я использовал код Джеффа из этого ответа , чтобы вывести список всех COM-объектов в моей системе, и не смог найти ни одного объекта, похожего на Virtual PC. Так что теперь я думаю, что ответ «это невозможно» может быть правильным, но я все же собираюсь оставить этот вопрос открытым, если у кого-то есть какие-либо дальнейшие предложения о том, как заставить PowerShell работать с Virtual PC 2007. Тем временем Я настоятельно рекомендую перейти на новый Windows Virtual PC в Windows 7 и просто не беспокоиться о совместимости всех моих виртуальных машин с более ранними версиями Windows.

Ответы [ 3 ]

3 голосов
/ 09 июля 2009

Чтобы протестировать некоторые из моих собственных программ в ВМ, я использую AutoIt (http://www.autoitscript.com/autoit3/) для запуска ВМ, а в ВМ я снова использую его для запуска и управления моим приложением. Связь осуществляется с использованием общей папки внутри виртуальной машины (написание сценария AutoIt для выполнения, вывод приложения в виде журнала).

Это не Powershell, но, возможно, это все равно поможет. :)

С уважением,

Sebastiaan

1 голос
/ 13 июня 2009

Это то, что вы ищете? Я использую Windows 7, на которой установлена ​​функция «виртуальные окна xp» (фактически vpc 2007).

[E] PS> $vpc = new-object -com virtualpc.application
[E] PS> $vpc

HostInfo                    : System.__ComObject
VirtualMachines             : System.__ComObject
VirtualNetworks             : System.__ComObject
UnconnectedNetworkAdapters  : System.__ComObject
SupportDrivers              : System.__ComObject
Tasks                       : System.__ComObject
MinimumMemoryPerVM          : 4
MaximumMemoryPerVM          : 3071
SuggestedMaximumMemoryPerVM : 2763
MaximumFloppyDrivesPerVM    : 1
MaximumSerialPortsPerVM     : 2
MaximumParallelPortsPerVM   : 1
MaximumNetworkAdaptersPerVM : 4
MaximumNumberOfIDEBuses     : 2
DefaultVMConfigurationPath  : G:\Users\Oisin\AppData\Local\Microsoft\Windows Virtual PC\Virtual Machines\
SearchPaths                 : {}
USBDeviceCollection         : System.__ComObject
Name                        : Windows Virtual PC
Version                     : 6.1.7084.0
UpTime                      : 2
0 голосов
/ 21 июля 2009

Похоже, что возможно автоматизировать создание виртуальных образов с помощью MS Virtual Server 2005 . В следующих статьях подробно рассматривается использование сценариев PowerShell для автоматизации создания виртуальных образов:

Начиная с части 2, в разделе «Тесты конфигурации на виртуальной машине», представляется возможным передать файлы и запланировать выполнение сценариев. Используя эти статьи в качестве основы, должна быть возможность автоматизировать создание виртуального образа MS так же, как лордбрейн, описанный для образа VMware.

...