0

我正在尝试编写一个 VBscript 来调用批处理文件。我可以从命令提示符下做的事情,但我没有从 VBscript 做同样的事情。
从命令:

C:\PR\PS\build\bin>execDl.bat Jack > History.txt \n 
Jack> getHistory 50008 Dl \n
quit

我可以从脚本中调用第一步,但我不明白如何执行第二步和第三步。直到现在我的脚本

dim shell
dim ID 
ID ="50008"
dim Deal 
Deal ="Deal"
dim UserName 
Deal ="admin"
dim OutputPoint 
OutputPoint =">"
dim batchFileFolder
batchFileFolder = "C:\PR\PS\build\bin\"
set shell=createobject("wscript.shell")
strRun = batchFileFolder & "execDl.bat admin " & OutputPoint _
   & batchFileFolder & "output1.txt" & """"
shell.run(strRun)
set shell=nothing

非常感谢任何帮助。

c:\PR\PS\build\bin>execDl.bat admin ------> 在命令提示符下给出以下输出,然后光标指向 admin
当前用户是:tswan


欢迎使用 FlowEngine Prototype 命令行界面。
对于有效命令的列表,(在提示符处输入“帮助”。


管理> getHistory 7006 Dl

文档的活动历史记录:7006

进程提交时间:2010-05-19 00:55:59.56
进程 ID:3
提交者:swang

活动名称 资源 行动 完成日期 备注


提交 tswan 提交 2010-05-19 00:55:59.937 Deal Manager tswan 批准 2010-05-19 00:56:26.013 批准 完成 2010-05-19 00:56:26.027

getHistory "7006 Dl" 已成功完成。


这是我在命令提示符中遵循的总体命令序列,我在顶部提到的一个是将输出重定向到文本文件的三步命令。

我的疑问是我如何执行包括 getHistory 和 vb 脚本中的退出语句在内的其余步骤。:( @Mr Fuzzy Button 感谢您对其进行格式化。我是stackoverflow 发布方式的新手。

谢谢

4

1 回答 1

0

基本上,您需要将通常在 FlowEngine 提示符下键入的命令放入文件中,然后从该文件重定向标准输入。就像是:

dim fso
dim f
dim cmd
dim shell
dim inpFile
dim outFile
inpFile = "execInput.txt"
outFile = "execOutput.txt"
Set fso = CreateObject("Scripting.FileSystemObject")
Set f = fso.OpenTextFile( inpFile , 2, True)
f.Write "getHistory 50008 Deal" & vbCrLf & "quit" & vbCrLf
f.close
set shell=createobject("wscript.shell")
cmd = "execDeal.bat admin < " & inpFile & " > " & outFile
shell.run( cmd )
set shell=nothing
于 2013-02-27T22:47:38.503 回答