2013-10-25 44 views
0

我有一个vbs文件,调用一个函数,然后运行一个命令。 (我知道这很复杂,但必须这样做。)我遇到的问题是我将值传递给函数,该函数应该将该值作为参数传递给命令行。 file1.vbs中的msgbox返回“10698441”,因为它应该但file2.vbs中的msgbox正在返回varRAW。我需要这个来显示变量的真实值。我怎样才能得到这个变量来解决正确的价值?我还需要将file2.vbs创建的值保存到变量中。那可能吗?vbscript函数变量不解析

file1.vbs:

fileAPPNUM("10698441") 
function fileAPPNUM(varRAW) 
    msgbox varRAW 
    lresult = CreateObject("WScript.Shell").Run ("c:\windows\syswow64\cscript.exe file2.vbs varRAW",0,true) 
end function 

file2.vbs:

Set objFSO=CreateObject("Scripting.FileSystemObject") 
outFile="C:\temp\AppNum.txt" 
Set objFile = objFSO.CreateTextFile(outFile,True) 
Dim strCon 
CAID=WScript.Arguments.Item(0) 
msgbox CAID 
strCon = "DSN=*****; " & _ 
    "uid=********;pwd=*********;" 
Dim oCon: Set oCon = WScript.CreateObject("ADODB.Connection") 
Dim oRs: Set oRs = WScript.CreateObject("ADODB.Recordset") 
oCon.Open strCon 
Set oRs = oCon.Execute("select SPRCMNT_TEXT from SPRCMNT where SPRCMNT_TEXT like 'CA_%" + CAID + "%'") 
objFile.write oRs.Fields(0).Value & vbCrLf 
objFile.close 
oCon.Close 
Set oRs = Nothing 
Set oCon = Nothing 

回答

1

传递varRAW的.Run("... file2.vbs " & varRAW,0,true)