VirtualBox的。 如何脚本启动机器和安装程序运行(Windows)

我可以看到,我可以使用VBoxManage启动和停止虚拟机的虚拟机。 我不确定这是我需要的工具。

我试图写一个脚本

  1. 将启动虚拟机(不同风格的Windows)
  2. 运行一个自定义的软件(在我的情况下是一个安装程序),并logging这个结果
  3. 虚拟机的力量

我意识到Web服务和API的存在,但是我无法在网上find有关第2点的更多信息。

我真的很感激这方面的一些方向。 即我应该使用vboxmanage来启动和停止虚拟机,然后以其他方式运行安装程序? 或者我应该使用COM API,如果是的话,有关如何做第二步的一些示例的想法?

根本不熟悉VirtualBox。 但是我可以写代码。

更新:我应该看stream浪者还是木偶? 正如你可能猜测的那样,这是一个安装程序的testing套件,能够重新使用它将是一件好事。

谢谢

你可以启动一个虚拟机

 VBoxManage startvm <vm> 

并将其closures

 VBoxManage controlvm <vm> poweroff 

您可以使用Guest来执行命令

 VBoxManage guestcontrol execute ... 

这适用于命令行程序,您可以将输出redirect到主机。 不过,我不确定这个GUI应用程序能像多普通的Windows MSI安装包一样工作得如何。 关于“logging结果”的内容有点含糊不清,你的安装程序是否会写入一个日志文件,在closures虚拟机之前可以发送到networking共享中?

您也可以拍摄虚拟机的快照,然后再查看

是的,您可以准确描述您所描述的内容。 据称,可以从Windows主机环境中做到这一点,但根据我的经验,这些function只能在Linux中完全工作。 (这个脚本也可以在OS X上正常运行,但是你不能获得RDPauthentication,这使得远程系统的脚本编写更less了一个有趣的过程。)

通过添加一些各种各样的hoop-jumping,您还可以远程更新来宾添加,安装/删除软件,运行Powershell脚本,并使用WUInstall来更新Windows。 这真的很漂亮。

埃里克