【发布时间】:2013-06-05 16:25:25
【问题描述】:
喂,
我正在从事一个项目,该项目必须从 C++ 调用一个用 JavaScript 制作的自定义函数。我可以运行函数
该项目应该只能在Windows上运行(实际上它是一个Windows服务),所以使用接口IWebBrowser2和IHtmlDocument2就可以了
函数的签名是string function(string)。我可以在 C++ 中运行该函数,基于 this tutorial(我正在使用 IWebBrowser2 和 IHtmlDocument2 接口),但我无法从 C++ 中获取该 JS 函数的输出。
是否有任何方法可以使用这些接口从 C++ 中检索该 JS 函数的输出? (或者其他)
谢谢,
【问题讨论】:
-
当你通过
Invoke调用函数时,返回值放在VARAINT中。这是 Invoke 的第 6 个参数。 -
您只需要调用定义为文本的javascript函数,还是网页上下文中的javascript函数?
-
@SimonMourier 我只需要调用一个定义为文本的 javascript 函数。
-
您可以在 Windows 中重用脚本引擎,请查看:codeproject.com/Articles/349554/… 和此处 stackoverflow.com/questions/4744105/…(在 C# 中,但您可以将其翻译回 C++)
标签: javascript c++ com iwebbrowser2