获取当前正在运行的虚拟机(Vmware Workstation),并对虚拟机进行控制(.Net)

原创 2016年06月30日 16:08:09

vmware workstation 提供了一个命令行工具进行虚拟机管理

C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe

用法如下:

POWER COMMANDS           PARAMETERS           DESCRIPTION
--------------           ----------           -----------
start                    Path to vmx file     Start a VM or Team
                         [gui|nogui]

stop                     Path to vmx file     Stop a VM or Team
                         [hard|soft]

reset                    Path to vmx file     Reset a VM or Team
                         [hard|soft]

suspend                  Path to vmx file     Suspend a VM or Team
                         [hard|soft]

pause                    Path to vmx file     Pause a VM

unpause                  Path to vmx file     Unpause a VM
GENERAL COMMANDS         PARAMETERS           DESCRIPTION
----------------         ----------           -----------
list                                          List all running VMs

upgradevm                Path to vmx file     Upgrade VM file format, virtual hw

installTools             Path to vmx file     Install Tools in Guest

checkToolsState          Path to vmx file     Check the current Tools state

register                 Path to vmx file     Register a VM

unregister               Path to vmx file     Unregister a VM

listRegisteredVM                              List registered VMs

deleteVM                 Path to vmx file     Delete a VM

clone                    Path to vmx file     Create a copy of the VM
                         Path to destination vmx file
                         full|linked
                         [-snapshot=Snapshot Name]
                         [-cloneName=Name]
更多的参数可以直接运行vmrun命令查看(不带参数)

.Net中,通过process.start来运行vmrun(带list参数) ,获取该命令的标准输出重定向即可获得当前正在运行的vmware虚拟机列表,然后可根据不同需求(stop、suspend、pause等),带上对应的参数进行虚拟机操作。

        Dim strPathShutdown As String = ConfigurationManager.AppSettings("shutdown"),
            strPathVmrun As String = ConfigurationManager.AppSettings("vmrun"),
            proc As New Process(),
            intVM As Integer,
            listVM As New List(Of String)
        proc.StartInfo = New ProcessStartInfo(strPathVmrun, "list")
        proc.StartInfo.RedirectStandardOutput = True
        proc.StartInfo.UseShellExecute = False
        proc.Start()
        Dim out As String = proc.StandardOutput.ReadToEnd()
        MsgBox(out)
        listVM = Split(out, vbCrLf).ToList
        listVM.RemoveAt(0)
        intVM = New System.Text.RegularExpressions.Regex("\d", RegexOptions.IgnoreCase).Match(out).Value
        For Each vm As String In listVM
            proc.StartInfo.Arguments = String.Format("suspend ""{0}""", vm)
            proc.Start()
        Next

vmrun的运行结果和对标准输出的解析


版权声明:本文为博主原创文章,未经博主允许不得转载。

使用命令行模式启动VMWare虚拟机

转自:http://blog.csdn.net/deepnight2005/article/details/8842968 工作中使用到在centos中安装vmware Workst...
  • forest_boy
  • forest_boy
  • 2015年11月19日 18:10
  • 3710

VMware怎么开机自启动,关机自动挂起虚拟机

1、系统开机自启动VMware虚拟机 方法一:使用工具将虚拟机加载为Windows系统服务 方法二:定制计划任务项 这里使用方法二, 即定制计划任务项; (1).使用vmrun命令来启...
  • w616589292
  • w616589292
  • 2015年03月23日 17:03
  • 10038

vmware的命令行参数

vmrun命令行工具: 对于自动化测试有如下实用命令行(-T代表目标类型,后更参数ws代表Workstation): l Power Commands:开启、停止、重启、挂起虚拟机 vmrun -...
  • guyue35
  • guyue35
  • 2016年11月29日 09:52
  • 2474

如何在esxi 6上面套嵌运行虚拟机(kvm、xen、esxi6、vmware workstation、Qemu)

在 VMware ESXi 虚拟机上运行虚拟机,被称为多层虚拟或者嵌套虚拟机(Nested VMs)。如果只有一台电脑想测试多节点 OpenStack 环境的话,使用 VMware ESXi 虚拟几个...
  • lic95
  • lic95
  • 2015年09月27日 08:50
  • 3561

WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法

原地址:http://www.cnblogs.com/shaddock2013/p/3155024.html 最近在试着在Windows 7上搭建Windows Phone 8的开发调试环境,使...
  • fkdtzlzb
  • fkdtzlzb
  • 2014年01月10日 15:51
  • 5359

为虚拟机中运行的VMware ESX 4进行快照

VMware ThinApp是一款应用程序虚拟化工具,但对于我来说用的更多的是制作单文件软件和便携软件。 VMware ThinApp将程序相关资源如exe、dll、ocx、注册表项等封装到单一...
  • ergouge
  • ergouge
  • 2012年04月30日 12:49
  • 591

好用的免费虚拟机VirtualBox-4.2超越vmware workstation

  • 2013年06月22日 14:27
  • 94.49MB
  • 下载

VMware Workstation(虚拟机) V7.0.0 绿色版4

  • 2011年04月01日 07:28
  • 10MB
  • 下载

VMware Workstation(虚拟机) V7.0.0 绿色版5

  • 2011年04月01日 07:18
  • 10MB
  • 下载

vmware workstation v5.5.1虚拟机教程

  • 2009年10月31日 19:28
  • 932KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:获取当前正在运行的虚拟机(Vmware Workstation),并对虚拟机进行控制(.Net)
举报原因:
原因补充:

(最多只允许输入30个字)