这基本上是重复的 这个问题, ,但接受的答案是“否”,我想保持这个问题开放,直到得到实际答案,而不是接受“否”并放弃。

斯蒂芬·罗斯 他通过 Twitter DM 告诉我使用 PowerShell 启动和停止 Virtual PC VM 并执行运行安装、自动更新和病毒扫描等操作,但他尚未回复我的请求,提供任何描述如何执行此操作的资源链接。

我已经开始学习 PowerShell,但我不知道如何获取或使用 Virtual PC 中的虚拟机列表上的任何信息。

编辑: Windows 虚拟 PC(Windows 7 XP 模式) 与 Virtual PC 2007 不同。我正在运行 Windows 7 作为主机操作系统,但我仍在使用 Virtual PC 2007,因为我需要保持在没有新 Windows Virtual PC 的 Vista 或 XP 主机上运行来宾计算机的能力。我简单地安装了 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 对象,但找不到任何看起来像虚拟 PC 的对象。所以现在我认为“不可能”的答案可能是正确的,但我仍然会保留这个问题,以防有人对让 PowerShell 与 Virtual PC 2007 一起工作有任何进一步的建议。与此同时,我正在强烈考虑跳转到 Windows 7 中的新 Windows Virtual PC,而不必担心让我的所有虚拟机与早期版本的 Windows 兼容。

有帮助吗?

解决方案

要测试一些我自己的软件的虚拟机中我使用了AutoIt( HTTP://www.autoitscript。 COM / autoit3 / )启动虚拟机,并在VM中我又用它来启动和控制我的应用程序。通信是使用虚拟机内的共享文件夹(写入AutoIt的脚本来执行,例如一个日志的应用程序的输出)完成的。

这不是PowerShell中,但也许这有助于反正。 :)

此致

Sebastiaan

其他提示

这是你在找什么?我在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

看起来可以使用以下命令自动创建虚拟映像 微软虚拟服务器 2005. 。以下文章详细介绍了如何使用 PowerShell 脚本自动创建虚拟映像:

从第 2 部分的“虚拟机上的配置测试”部分中,似乎可以传输文件并安排脚本运行。以这些文章为基础,应该可以像 lordbrain 描述的 VMware 映像一样自动构建 MS 虚拟映像。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top