【发布时间】:2017-03-30 21:52:40
【问题描述】:
在这方面遇到了困难。我可以从命令提示符成功运行以下命令,但无法使用 VB 脚本。
来自 CMD:
- 将目录更改为 C:\Program Files (x86)\VMware\VMware Workstation\
- 然后运行:vmrun.exe -T ws start "C:\Users\Office\Documents\Virtual Machines\Windows 7\Windows 7.vmx" nogui
我在 VBS 中的尝试:
Dim objShell, strPath1, strAttr, strPath2
Set objShell = CreateObject ("WScript.Shell")
strPath1 = "C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe"
strAttr1 = " -T ws start "
strAttr2 = "C:\Users\Office\Documents\Virtual Machines\Windows 7\Windows 7.vmx"
strAttr3 = " nogui"
'WScript.Echo strPath1 & strAttr1 & """" & strAttr2 & """" & strAttr3
objShell.Run strPath1 & strAttr1 & """" & strAttr2 & """" & strAttr3
我得到的错误是:系统找不到指定的文件。
【问题讨论】:
-
我认为你需要 double 用空格对每个路径进行双引号
-
谢谢!就是这样。在查看回显输出时它只是看起来不正常,但它可以工作:)
-
完整代码最终为:
Dim objShell, strPath1, strAttr1, strAttr2, strAttr3 Set objShell = CreateObject ("WScript.Shell") strPath1 = """C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe""" strAttr1 = " -T ws start " strAttr2 = """C:\Users\Office\Documents\Virtual Machines\Windows 7\Windows 7.vmx""" strAttr3 = " nogui" 'WScript.Echo strPath1 & strAttr1 & strAttr2 & strAttr3 'objShell.Run strPath1 & strAttr1 & """" & strAttr2 & """" & strAttr3 objShell.Run strPath1 & strAttr1 & strAttr2 & strAttr3
标签: command-line vbscript