(本機環境:win7;python 2.7.9; vbox 4.3.12)
目標:
完成官網(https://pypi.python.org/pypi/pyvbox)上的demo:
> python
In [1]: import virtualbox
In [2]: vbox = virtualbox.VirtualBox()
In [3]: print("VM(s):\n + %s" % "\n + ".join([vm.name for vm in vbox.machines]))
VM(s):
+ filestore
+ xpsp3
+ win7
+ win8
+ test_vm
1 安裝python——vbox組件
---------------------安裝vboxapi------------------------------------------
這個路徑下有個vboxapisetup.py
C:\Program Files\Oracle\VirtualBox\sdk\install
pyvbox須要用到vboxapi庫。
python vboxapisetup.py install (若是成功,跳過看2;失敗請繼續)
可能會出現錯誤:
這是說安裝腳本不知道vbox安裝路徑在哪裏。咱們須要指定。
set VBOX_INSTALL_PATH="C:\Program Files\Oracle\VirtualBox"
此次安裝試一下:
成功!
獨立安裝vboxapi:
這個url下,有各個版本的vbox各類安裝文件。
解壓
VirtualBoxSDK-4.3.12-93733\sdk\installer
中有vboxapisetup.py
用同上的方法安裝。
---------------------安裝
pywin32
------------------------------------------
下載相對應的版本。個人是32位python。(不會查看的話,進入python,會提示
)
2 簡單使用
試運行:
> python
In [1]: import virtualbox
In [2]: vbox = virtualbox.VirtualBox()
In [3]: print("VM(s):\n + %s" % "\n + ".join([vm.name for vm in vbox.machines]))
VM(s):
+ filestore
+ xpsp3
+ win7
+ win8
+ test_vm
若是出現:
去1查看「安裝pywin32一節」
成功以後的樣子:
3 高級應用
vbox官方出了一個功能比較強大的python腳本——vboxshell.py
D:\ccode\vbox>python vboxshell.py
Running VirtualBox version 4.3.12
vbox> help
Help page:
alias: Control aliases
attachCtr: Attach storage controller to the VM: attachCtr win Ctr0 IDE ICH6
attachHdd: Attach HDD to the VM: attachHdd win /disk.vdi "IDE Controller" 0:1
attachIso: Attach CD/DVD to the VM: attachIso win /os.iso "IDE Controller" 0:1
attachUsb: Attach USB device to the VM (use listUsb to show available devices): attachUsb win uuid
... ...
verbose: Toggle verbosity
vbox>
查看信息
vbox> info droid4x
One can use setvar <mach> <var> <value> to change variable, using name in [].
Name [name]: droid4x
... ...
Location: D:\code\client\Refactor\Droid4X\tinyplayer\Release\VirtualBox VMs\droid4x\droid4x-disk3.vmdk
Name: droid4x-disk3.vmdk
Format: VMDK
Shared folders:
vbox>
完畢!