VBScript how to join WScript.Arguments?

Another solution can be done with ArrayList object from the system:

Set oAL = CreateObject("System.Collections.ArrayList")
For Each oItem In Wscript.Arguments: oAL.Add oItem: Next
WScript.Echo Join(oAL.ToArray, " ")

            ReDim arr(WScript.Arguments.Count-1)
            For i = 0 To WScript.Arguments.Count-1
              arr(i) = """"+WScript.Arguments(i)+""""
            Next
            WScript.Echo Join(arr)

this will add quotes for each argument, you can then remove it in the batch file with %~1 and so on.


WshArgument objects are not arrays, so you can't use Join() on them. What you can do is something like this:

ReDim arr(WScript.Arguments.Count-1)
For i = 0 To WScript.Arguments.Count-1
  arr(i) = WScript.Arguments(i)
Next

WScript.Echo Join(arr)