Reflection 从jscript(或vbscript)如何从COM对象动态调用方法?

Reflection 从jscript(或vbscript)如何从COM对象动态调用方法?,reflection,com,vbscript,wsh,jscript,Reflection,Com,Vbscript,Wsh,Jscript,JScript允许像.apply()这样的时髦特性,您可以通过名称调用方法,传递一个参数数组来调用方法。然而,这适用于JScript(javascript)对象,显然在COM组件上不起作用——但这是我正在寻找的特性 有没有办法通过名称和JScript中的动态参数调用COM对象方法?我什么也找不到 谢谢 动态构建要作为字符串调用的脚本,然后使用eval()调用它。例如eval(“someObj.method()”)或eval(objName+“+methodName+”(“+args.join(“

JScript允许像.apply()这样的时髦特性,您可以通过名称调用方法,传递一个参数数组来调用方法。然而,这适用于JScript(javascript)对象,显然在COM组件上不起作用——但这是我正在寻找的特性

有没有办法通过名称和JScript中的动态参数调用COM对象方法?我什么也找不到


谢谢

动态构建要作为字符串调用的脚本,然后使用eval()调用它。例如
eval(“someObj.method()”)
eval(objName+“+methodName+”(“+args.join(“,”+”))

因为我使用了WSC(Windows脚本组件),所以我做了一个变通方法,使用XSL生成包装器脚本,转换输入WSC(这是一个XML文件)。XSL生成一个switch{}语句,每个方法都有一个case,为每个方法提供正确数量的arg


不完全是我想要的,但是我得到了更好的错误检查:)

谢谢您的回复。eval()的主要问题是无法传入动态数量的参数。methodOne()可以接受一个参数,而methodTwo()可以接受两个参数。@Troy-eval接受一个字符串,这样您就可以动态地构建它。我加了一个例子。对不起。。。我的回答不清楚:(虽然您可以构建字符串,但是没有反映可以知道要传递多少参数。