C++ 是否可以将vbscript数组传递给C++;通过命令行执行?
我有一个VBScript,其中有一个2D数组。从VBScript我想调用一个.exe,用C++编写。p> 我可以通过命令行或其他方式将此VBScript数组传递给.exe吗?如果是,如何以及如何处理?(举个例子就好了。) 如果不可能,使用二维阵列,但使用一维阵列,这也是一个解决方案 谢谢 更新: 我只是想澄清一下:我不想一个接一个地传递数组中的项目。我只想调用exe一次,以某种方式传递整个数组,并在exe中处理它 更新2: 数组仅包含字符串,脚本的主机环境为Windows脚本主机。不幸的是,在硬盘上创建任何文件都不是一个选项。知道这一点可能会有所帮助C++ 是否可以将vbscript数组传递给C++;通过命令行执行?,c++,arrays,windows,C++,Arrays,Windows,我有一个VBScript,其中有一个2D数组。从VBScript我想调用一个.exe,用C++编写。p> 我可以通过命令行或其他方式将此VBScript数组传递给.exe吗?如果是,如何以及如何处理?(举个例子就好了。) 如果不可能,使用二维阵列,但使用一维阵列,这也是一个解决方案 谢谢 更新: 我只是想澄清一下:我不想一个接一个地传递数组中的项目。我只想调用exe一次,以某种方式传递整个数组,并在exe中处理它 更新2: 数组仅包含字符串,脚本的主机环境为Windows脚本主机。不幸的是,在硬
- 数组包含哪些内容(文本?数字?),以及
- 脚本的主机环境(浏览器?Windows脚本主机? HTA?小部件?什么?),以及
- 设计用于以文本形式表示数据的命令行语法。转换,使用该命令行调用exe。请注意,命令行限制为,并且命令解释器施加了8KB的限制
- 使用Windows管道或Windows邮件槽在运行时传递数据
定义C++自动化对象。在C++接收端,你可能会使用OLE SaaSuriar。从VBScript实例化并调用这样的对象
可能还有更多的方法,这取决于你在做什么 有几个选项:a)命令行参数b)文件c)共享内存d)管道。。。。完全取决于你的用例,什么是最好的方法。文件不是一个选项。命令行是最好的,也许共享内存也可以。但是,对于命令行解决方案,您需要将数组转换为ASCII,将其传递到命令行中,然后将C++程序转换回实际数据。您可以超出命令行的任何合理大小。。。查看
WM_COPYDATA
——就是这样一个例子。命令行采用字符串化参数(intmain(intargc,char*argv[])
),其中argc
告诉您有多少参数。这不是一种很好的表示二维数组的格式。当然也有可能:传递前2个参数来指定数组的维度,下面的所有参数都是特定的值。你能详细解释一下,为什么文件不是一个选项吗?@kampi我很明白你想做什么。“我想以某种方式传递整个数组。”然后您可能应该查找共享内存或管道。命令行不支持您想要的内容,中间文件也会支持。我没有告诉你应该多次打电话给你的.exe
。我更新了我的问题。对不起,我不认为数组包含什么很重要。