我通过调用installExtensions启用了ConsoleExtension来调试脚本。如何捕获QJSEngine的控制台输出?
发布于 2020-07-02 19:46:18
如果您想将脚本的输出捕获回您的C++程序中,最好不要使用ConsoleExtension -而是公开一个API,以允许脚本直接调用您的实现来“打印到标准输出”。
以Plasma ScriptEngine所做的为例-它在globalObject上公开了一个print()方法,脚本可以使用该方法来“打印输出”。在等离子体中,这将从等离子处理打印出来,并由各种日志记录机制捕获,但您可以对print()函数的输入做任何您想做的事情。您的全局对象接口甚至可以模仿console.log()。
https://stackoverflow.com/questions/54508389
复制相似问题