【问题标题】:Automate Virtual Machine自动化虚拟机
【发布时间】:2011-07-07 06:30:19
【问题描述】:

我正在从事与 Mircosoft Virtual Lab 类似的项目。我创建了一个 .aspx (C#) 网页,它能够运行 powershell 脚本来启动 vmware-vmrc 控制台。该网页已部署并在我自己的计算机上运行。我也尝试在服务器上发布我的解决方案,网页运行良好,但控制台没有出现在我的屏幕上。我猜是因为脚本在服务器而不是本地主机上运行。如果我的解决方案/程序是在服务器中构建的,我想知道是否有任何方法可以启动控制台。

$hostname = "localhost:8333"
$vms = "VmName"
$vm = get-vm $vms
$vmid = $vm.id
$gvm = Get-View $vmid
$vmrc = "C:\Program Files (x86)\Common Files\VMware\VMware Remote Console Plug-in\vmware-vmrc.exe"
$vmrcargs = '-h ' + $hostname + ' -m "' + $gvm.Config.Files.VmPathName + '"'
[Diagnostics.Process]::Start($vmrc, $vmrcargs)

【问题讨论】:

    标签: virtual-machine vmware powershell c# asp.net


    【解决方案1】:

    在您的代码中,您将主机名硬编码为 localhost,理论上您可以从 ASP.NET 上下文的 Request 对象中读取此值并将其替换为客户端的主机名。

    这么说,我真的怀疑它会起作用,因为它没有被授予服务器远程访问客户端的权限......即使传递正确的 IP 地址,即使我看到指定了一个端口(8333),也可以是介于两者之间的防火墙...

    当然在 Intranet 中也可以使用,您必须尝试一下。

    【讨论】:

      【解决方案2】:

      通过 8333 端口对客户端名称执行 telnet 以检查端口是否打开。

      如果 telnet 有效,则将“localhost(或 dns 或主机名)替换为客户端的 IP”

      如果 telnet 不起作用,则打开端口。

      但是,如果端口是开放的,它将工作。

      亲切的问候,

      花哨

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-06
        • 1970-01-01
        • 2020-11-10
        相关资源
        最近更新 更多