将值从vbscript传递到批处理

use*_*509 1 vbscript batch-file

我有两个文件:batch.bat和vbscript.vbs..bat文件包含一个循环,我需要调用.vbs,并传递给它2个参数..vbs文件包含一个带有2个参数的函数(我传递给.vbs文件的参数).我需要在.bat文件中访问.vbs返回的函数值.
有人可以帮帮我吗?

我不是专家所以请原谅我糟糕的语法.我正在调用.bat文件.文件看起来应该是这样的

batch.bat:

loop start

' calling the vbs file

cscript vbscript.vbs arg1 arg2 ( here I suppose something has to be add to get val from vbs)

' using value returned by .vbs function

loop end 
Run Code Online (Sandbox Code Playgroud)

vbscript.vbs:

function myfunction(arg1,arg2)
dim value

' do some calculation

myfunction= value
end function

dim value_to_return_to_batch
' now calling the function
value_to_return_to_batch=myfunction(arg1,arg2)
'
' here something has to be add to send value_to_return_to_batch  to batch
'
Run Code Online (Sandbox Code Playgroud)

aph*_*ria 5

更新

好的,所以你需要返回一个非整数.下面的代码适用于非整数和文本.

这是一个示例,您需要对其进行修改以满足您的需求.

在VB脚本中,执行以下操作:

WScript.Echo 99.99999
Run Code Online (Sandbox Code Playgroud)

在批处理文件中,执行以下操作:

FOR /F "usebackq tokens=*" %%r in (`CSCRIPT "MyVBS.vbs"`) DO SET RESULT=%%r
ECHO %RESULT%
Run Code Online (Sandbox Code Playgroud)