Arrays 将数组从一个VBScript传递到另一个VBScript

Arrays 将数组从一个VBScript传递到另一个VBScript,arrays,vbscript,parameter-passing,Arrays,Vbscript,Parameter Passing,我想知道是否可以将数组从一个VBScript传递到另一个VBScript 实际上,我试图实现的是将一个2D数组传递给另一个VBScript 我打算做的是,我运行一个脚本,将文件复制到本地计算机中的特定文件夹,这是软件部署的一部分(不需要安装) 但是因为我要对多个软件执行此操作,所以我要用我的函数创建一个通用模板 我现在陷入的困境是创建快捷方式。(用于创建多个快捷方式的模板) 所以我打算发送一个2D数组 以下是一个例子: Application Group 1 Installation Scrip

我想知道是否可以将数组从一个VBScript传递到另一个VBScript

实际上,我试图实现的是将一个2D数组传递给另一个VBScript

我打算做的是,我运行一个脚本,将文件复制到本地计算机中的特定文件夹,这是软件部署的一部分(不需要安装)

但是因为我要对多个软件执行此操作,所以我要用我的函数创建一个通用模板

我现在陷入的困境是创建快捷方式。(用于创建多个快捷方式的模板)

所以我打算发送一个2D数组

以下是一个例子:

Application Group 1
Installation Scripts Starts
'
'
Some Code
'
'
After files of Applications are copied
'
'
Run Shortcut Deployment(send a 2D of array with it)
'
'
Shortcuts Deployed
'
'
Installation Scripts Ends
然后

例如,(0,0)将包含快捷方式名称&(0,1)将包含应用程序路径。 (1,0)将包含另一个应用程序的快捷方式名称&(1,1)将包含另一个应用程序路径

等等

还有什么方法可以做这样的事情吗?

一个简单的演示

script1.vbs

Dim objShell

varShort1 = "Shortcut1"
varShort2 = "Shortcut2"
varApp1 = "C:\path1"
varApp2 = "C:\path2"

Set objShell = Wscript.CreateObject("WScript.Shell")
objShell.Run "script2.vbs " & varShort1 & " " & varApp1 & " " & varShort2 & " " & varApp2, True
Set objShell = Nothing

wscript.quit
Set args = Wscript.Arguments

For Each arg In args
  Wscript.Echo arg
Next

wscript.quit
script2.vbs

Dim objShell

varShort1 = "Shortcut1"
varShort2 = "Shortcut2"
varApp1 = "C:\path1"
varApp2 = "C:\path2"

Set objShell = Wscript.CreateObject("WScript.Shell")
objShell.Run "script2.vbs " & varShort1 & " " & varApp1 & " " & varShort2 & " " & varApp2, True
Set objShell = Nothing

wscript.quit
Set args = Wscript.Arguments

For Each arg In args
  Wscript.Echo arg
Next

wscript.quit
一个简单的演示

script1.vbs

Dim objShell

varShort1 = "Shortcut1"
varShort2 = "Shortcut2"
varApp1 = "C:\path1"
varApp2 = "C:\path2"

Set objShell = Wscript.CreateObject("WScript.Shell")
objShell.Run "script2.vbs " & varShort1 & " " & varApp1 & " " & varShort2 & " " & varApp2, True
Set objShell = Nothing

wscript.quit
Set args = Wscript.Arguments

For Each arg In args
  Wscript.Echo arg
Next

wscript.quit
script2.vbs

Dim objShell

varShort1 = "Shortcut1"
varShort2 = "Shortcut2"
varApp1 = "C:\path1"
varApp2 = "C:\path2"

Set objShell = Wscript.CreateObject("WScript.Shell")
objShell.Run "script2.vbs " & varShort1 & " " & varApp1 & " " & varShort2 & " " & varApp2, True
Set objShell = Nothing

wscript.quit
Set args = Wscript.Arguments

For Each arg In args
  Wscript.Echo arg
Next

wscript.quit

做这件事没有优雅的方式。为什么不将所有这些信息作为?关于如何通过命令行参数实现这一点的任何想法?通常可以通过多种方式实现。如果脚本进程将同时运行(第一个进程运行第二次并等待直到结束),则可以通过多进程环境直接从第二个脚本访问第一个脚本中的数组(或任何其他变量)。如果它们一个接一个地启动,那么应该首先序列化数组以作为字符串传递。另一种方法是实现Include函数,这样快捷部署脚本文件就可以在其他脚本中运行。没有一种优雅的方法可以做到这一点。为什么不将所有这些信息作为?关于如何通过命令行参数实现这一点的任何想法?通常可以通过多种方式实现。如果脚本进程将同时运行(第一个进程运行第二次并等待直到结束),则可以通过多进程环境直接从第二个脚本访问第一个脚本中的数组(或任何其他变量)。如果它们一个接一个地启动,那么应该首先序列化数组以作为字符串传递。另一种方法是实现Include函数,这样快捷部署脚本文件可以在其他脚本中运行。