VBS脚本传递参数?

大家好我在VBS有这个剧本:

On Error Resume Next If WScript.Arguments.Count < 2 Then WScript.Echo "This script requires arguments." WScript.Quit End If Dim sURL, sAuth, sRequestType sUrl = "http://192.168.10.6:8080/rest/servicedeskapi/request" sAuth = "YWRtafW5pc3dRyYXRvcjdddpQdW50bs0dUMyE=" sRequestType = "POST" Dim sArg1, sArg2, sArg3, sBody sBody = "{""serviceDeskId"":2,""requestTypeId"":30,""requestFieldValues"":{""summary"":""sArg1"",""description"":""sArg2""}}" sResponse = HTTPPost(sURL, sBody) WScript.Echo sResponse Function HTTPPost(sURL, sRequest) Set oHTTP = CreateObject("MSXML2.ServerXMLHTTP") oHTTP.open sRequestType, sURL, false oHTTP.setRequestHeader "Content-Type", "application/json" oHTTP.setRequestHeader "Content-Length", Len(sRequest) oHTTP.setRequestHeader "Authorization", "Basic " & sAuth oHTTP.send sRequest HTTPPost = oHTTP.responseText End Function 

一切似乎很好地工作,期望我通过命令行“sArg1,sArg2和sArg3”传递的variables作为确切的文本而不是variables传递,我已经在过去的工作,但我不记得我做了什么来修复它。

csript.exe c:\ folder \ script.vbs testarg1 testsarg2 testsarg3

任何事情看到任何错误? 我尝试过围绕这些参数玩耍,但这似乎没有帮助。

非常感谢

你在哪里将你的命令行参数分配给你声明的variables?

 Dim sArg1, sArg2, sArg3, sBody 

您必须检索并分配variables。

 Dim sArg1, sArg2, sArg3, sBody sArg1 = Wscript.Arguments.Item(0) sArg2 = Wscript.Arguments.Item(1) sArg3 = Wscript.Arguments.Item(2) wscript.Echo "sArg1 = " + sArg1 + "; sArg2 = " + sArg2 + "; sArg3 = " + sArg3 

如果你不想要的话,你甚至不必先声明它们。