2009-06-09 48 views
11

這基本上是this question的副本,但接受的答案是「否」,我想保留此問題直到獲得實際答案,而不是接受「否」並放棄。使用PowerShell自動化Virtual PC 2007?

Stephen Rose通過Twitter DM告訴我使用PowerShell來啓動和停止虛擬PC虛擬機,並執行諸如運行安裝,自動更新和病毒掃描之類的操作,但是他尚未響應我對任何描述資源鏈接的請求怎麼做。

我已經開始學習PowerShell,但我無法弄清楚如何獲得或使用虛擬PC中虛擬機列表上的任何信息。

編輯:Windows Virtual PC (Windows 7 XP Mode)是不一樣的虛擬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:我用傑夫的代碼this answer列出我的系統上的所有COM對象,但沒有找到任何看起來像他們是虛擬PC。所以,現在我認爲「這是不可能的」答案可能是正確的,但我仍然會打開此問題,以防有人提出讓PowerShell與Virtual PC 2007協同工作的進一步建議。同時, ,我強烈地考慮在Windows 7中跳轉到新的Windows Virtual PC,而不必擔心保持我的所有虛擬機與早期版本的Windows兼容。

回答

3

爲了測試我自己的一些軟件的虛擬機中我使用了AutoIt(http://www.autoitscript.com/autoit3/)啓動虛擬機,並在VM中我又用它來啓動和控制我的應用程序。通信是使用VM內的共享文件夾完成的(編寫AutoIt腳本執行,輸出應用程序,如日誌)。

這不是Powershell,但也許這有助於反正。 :)

問候,

Sebastiaan

+0

謝謝!看起來很有希望。如果有效,我會接受這個答案。歡迎來到StackOverflow! – CoderDennis 2009-07-09 18:51:37

1

這是你在找什麼?我在Windows 7上安裝了「虛擬windows 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

Windows 7的新Windows Virtual PC與Virtual PC 2007不一樣。此代碼對我無效。看到我的編輯問題。 – CoderDennis 2009-06-15 16:58:27

0

它看起來像它可能自動使用MS Virtual Server 2005虛擬映像的創建。下面的文章詳細講述了用PowerShell腳本的自動化虛擬映像的創建:

從第2部分,在一個虛擬機的部分配置測試,似乎可以傳輸文件並計劃腳本運行。使用這些文章作爲基礎,應該可以按照與VMware映像相同的方式自動構建MS虛擬映像。