0

コマンドを実行する関数を呼び出すvbsファイルがあります。(これは複雑であることはわかっていますが、このようにする必要があります。)私が抱えている問題は、関数に値を渡していることです。関数は、その値を引数としてコマンドラインに渡すことになっています。file1.vbs の msgbox は「10698441」を返しますが、file2.vbs の msgbox は varRAW を返します。変数の真の値を表示するには、これが必要です。この変数を正しい値に解決するにはどうすればよいですか? また、変数に保存された file2.vbs によって作成された値も必要です。それは可能ですか?

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
4

1 に答える 1

1

のように varRAWの.Run("... file2.vbs " & varRAW,0,true)を渡します。

于 2013-10-25T15:48:12.957 に答える