我通过调用installExtensions
为ConsoleExtension
启用了脚本调试功能。如何捕获QJSEngine的控制台输出?
答案 0 :(得分:0)
如果您想将脚本的输出捕获回C ++程序,最好不要使用ConsoleExtension
-公开一个API,以允许脚本直接调用您的实现以进行打印到标准输出”。
例如,Plasma ScriptEngine的作用-它在print()
上公开了globalObject
方法,脚本可以使用该方法来“打印输出”。在Plasma中,可以从plasmashell过程中打印出来并通过各种日志记录机制捕获,但是您可以使用print()
函数的输入来完成所需的操作。您的全局对象界面甚至可以模仿console.log()
。