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

发布于 2024-11-17 22:53:30 字数 191 浏览 3 评论 0原文

JScript 允许像 .apply() 这样的时髦功能,您可以通过名称调用方法,传递参数数组来调用该方法。然而,这适用于 JScript (javascript) 对象,并且显然不适用于 COM 组件 - 但这正是我正在寻找的功能。

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

谢谢!

JScript allows funky features like .apply(), whereby you can invoke a method by name, passing an array of arguments to invoke the method with. However this applies to JScript (javascript) objects, and obviously won't work on a COM component - but this is the feature I am looking for.

Is there a way to invoke a COM object method, by name, and with dynamic args from JScript? I couldn't find anything.

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

ぇ气 2024-11-24 22:53:30

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

Dynamically build the script you want to call as a string then invoke it using eval(). eg eval("someObj.method()") or eval(objName + "." + methodName + "(" + args.join(",") +")").

画尸师 2024-11-24 22:53:30

由于我使用的是 WSC(Windows 脚本组件),因此我采取了一种解决方法,即使用 XSL 生成包装器脚本,并转换输入 WSC(这是一个 XML 文件)。 XSL 生成一个 switch{} 语句,其中每个方法都有一个 case,为每个方法提供正确数量的参数。

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

Since I'm using WSC (Windows Script Component) I have made a workaround whereby I generate a wrapper script using XSL, transforming the input WSC (which is an XML file). The XSL generates a switch{} statement with a case for each method, supplying the correct number of args for each method.

Not quite what I was after, but I get better error checking :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文