Batch file 将参数从批处理传递到vba,并在批处理中返回输出值

Batch file 将参数从批处理传递到vba,并在批处理中返回输出值,batch-file,vbscript,cmd,qtp,Batch File,Vbscript,Cmd,Qtp,我正在使用QuickTest Professional制作一个实用程序,它调用带有一些参数的批处理文件 此批处理文件进一步调用vbscript,并将一些参数传递到此vbs文件 此vbs文件执行操作并生成一个数字 我希望这个数字从vbs返回到batch,然后返回到QTP 到目前为止,我已经发现: QTP(sending parameters to bat) >> Batch(sending parameters to vbs) >> VBS (generat

我正在使用QuickTest Professional制作一个实用程序,它调用带有一些参数的批处理文件

此批处理文件进一步调用vbscript,并将一些参数传递到此vbs文件

此vbs文件执行操作并生成一个数字

我希望这个数字从vbs返回到batch,然后返回到QTP

到目前为止,我已经发现:

  QTP(sending parameters to bat)  >>   Batch(sending parameters to vbs)   >>  VBS (generates a number)   
现在我希望这个vbs返回输出编号

  VBS   >>  Batch(same bat which called vbs file)   >>  QTP(same qtp process which called this batch)
这是我的密码:

QTP:(调用批处理)

蝙蝠:(呼叫vbs)

vbs:


如果您只需将其打印到标准输出,就可以获取该值。因此,只需按如下方式编写VBS的结果:

Wscript.Echo result
for
命令可用于获取您调用的命令的输出:

for /f %%a in ('cscript abc.vbs "%~1" "%~2" "%~3" "%~4" "%~5"') do (
    echo The output is %%a
)
如果输出只是一个数字,则不需要向for循环添加任何额外选项。请尝试运行
获取/?
以获取更多帮助

 Set args = Wscript.Arguments ' to accept command line arguments
 xprod = args(0)
 mailto = args(1)
 mailcc = args(2)
 xtitle = args(3)
 xcomment = args(4)
Wscript.Echo result
for /f %%a in ('cscript abc.vbs "%~1" "%~2" "%~3" "%~4" "%~5"') do (
    echo The output is %%a
)