我有一個vbscript調用第二個vbscript並運行一個函數。這第二個函數返回一個值。但我無法弄清楚如何得到這個值,因爲第一個函數返回狀態碼。vbscript +函數調用函數 - 返回值
原始呼叫:fileCASTRING(12345678)
的VBScript 1
function fileCASTRING(varRAW)
lresult = CreateObject("WScript.Shell").Run ("c:\windows\syswow64\cscript.exe C:\ERMXData\Config\query-castring.vbs " & varRAW,0,true)
fileCASTRING=1
end function
查詢castring.vbs
doctype=WScript.Arguments.Item(0)
Dim strCon
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 ESBLINK_ADMR_CODE from ESBLINK where ESBLINK_DTYP_CODE like '%" + doctype + "%'"")
queryB=oRs.Fields(0).Value
oCon.Close
Set oRs = Nothing
Set oCon = Nothing
我必須這樣做,這樣,因爲在運行的VBScript 1方案以64位模式運行,query-castring.vbs中的代碼需要以32位模式運行才能運行。我怎樣才能得到queryB值回到原來的調用者?我正在嘗試不必將值寫入文件。