【发布时间】:2017-05-30 19:57:07
【问题描述】:
我正在尝试通过 VBS 获取在 cmd vindow 中运行的命令。就像这个答案一样: How to keep the VBScript command window open during execution
我要发出的命令是这样的,因为它在 .cmd 文件中运行。
"\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\dtexec" /x86 /f "\\path\folder\folder with space\Import.dtsx"
我无法让它按照上述答案的语法工作:
objShell.run "%comspec% /c ""SomeProgram.exe -R & pause""", 1, True
认为这是双引号问题,但我找不到。
(我必须使用 dtexec 的整个路径来强制使用 16 位版本。)
后续:============================================== ==========
这行得通:
oShell.Run "%comspec% /C ""\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\dtexec"" /x86 /f c:\temp\Import.dtsx & Pause", 1, True
这不是:
oShell.Run "%comspec% /C ""\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\dtexec"" /x86 /f ""c:\temp\temp two\Import.dtsx"" & Pause", 1, True
也不是这个:
oShell.Run "%comspec% /C ""\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn\dtexec /x86 /f c:\temp\temp two\Import.dtsx"" & Pause", 1, True
正是文件名参数中的那个空间正在容纳它。
【问题讨论】: