Board logo

标题: [特效代码] 批处理和vbs如何互相传递参数 [打印本页]

作者: qq779089973    时间: 2008-10-21 09:34     标题: 批处理和vbs如何互相传递参数

本帖最后由 pcl_test 于 2016-7-17 22:47 编辑

bat生成的vbs,该vbs的运行结果要怎么传递给bat
作者: youxi01    时间: 2008-10-21 12:03

要将vbs的结果传给bat,可以这样办
先将vbs取得的结果,用echo传出:wscript.echo .....
然后,用批处理里的for来接收即可

for /f "delims=" %%i in ('cscript [文件名].vbe //nologo') do set var=%%i
...

注意:该vbs文件扩展名要写成vbe,而不是vbs
作者: qq779089973    时间: 2008-10-21 12:27     标题: 回复 2楼 的帖子

举个例子

echo a=f(b)
)>"%tem%\1\1.vbs
在这个bat中怎么使用这个vbs中a的值
作者: Batcher    时间: 2008-10-21 15:39

请参考这个帖子:
http://bbs.bathome.net/viewthread.php?tid=2187#pid12597

然后仔细阅读2楼的回复,再亲自试验。

来自: qq779089973  标题: bat 与vbs间的参数传递

是不是一定要写成
>***.vbs   Echo 代码
这样的形式写吗  
2楼的回复看不懂,能不能帮忙写个输出a+b的bat。
谢谢

看来一定要有人给出完整代码,楼主才能学会。
没办法,解锁该帖。

[ 本帖最后由 Batcher 于 2008-10-21 20:33 编辑 ]
作者: pcl_test    时间: 2016-7-17 22:43

本帖最后由 pcl_test 于 2016-7-17 22:49 编辑

批处理与vbs混编如何互相传值/传递参数
http://bbs.bathome.net/redirect. ... 7766&ptid=27675
  1. @echo off
  2. set a=12.34
  3. set b=0.836
  4. >"%temp%\$tmp.vbs" echo;WSH.echo %a%+%b%
  5. for /f "delims=" %%i in ('cscript -nologo -e:vbscript "%temp%\$tmp.vbs"') do echo;%a%+%b%=%%i
  6. pause
复制代码
  1. @echo off
  2. set str=abcdefghijklmnopqrstuvwxyz
  3. for /f "delims=" %%a in ('mshta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(UCase(""%str%""))"^)(close^)') do echo;%%a
  4. pause
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2