找回密码
 立即注册
Qt开源社区 门户 查看内容

解决QML debugging is enabled.Only use this in a safe environment警告

2019-5-14 09:53| 发布者: admin| 查看: 1656| 评论: 0

摘要: 解决Qml程序中一个非常常见的警告QML debuggingisenabled.Onlyusethisina safe environment.为什么会有这个警告?由于在Qt5以上版本默认开启QML调试器造成的。用于告知用户,这将打开一个到运行QML的Javascript解释 ...

解决Qml程序中一个非常常见的警告 QML debuggingisenabled.Onlyusethisina safe environment.

为什么会有这个警告?


  • 由于在Qt5以上版本默认开启QML调试器造成的。用于告知用户,这将打开一个到运行QML的Javascript解释器的端口,以便从中获得调试输出。显然,这会造成一个安全漏洞,所以在不安全的地方使用时应该关闭它(在释放运行时自动关闭)。这个警告是为了提醒你这一点。

注意


  • Qt4默认不开启QML调试器,而Qt5版本以上默认开启。

  • 如果您不使用QML,无论如何都要关闭它。

  • 由于开启QML调试需要在TCP端口打开套接字,这存在安全风险。Internet上的任何人都可以连接到正在调试和执行任何JavaScript函数的应用程序。因此,您必须确保端口受到防火墙的适当保护。

解决方法


  1. 在项目文件(.pro)添加 DEFINES+=QT_QML_DEBUG_NO_WARNING(只关闭打印输出,并不能关闭QML调试器)。

  2. 直接关闭QML调试器:

  1. Qt4版本: CONFIG -= declarative_debug

  2. Qt5版本: CONFIG -= qml_debug

  1. 在界面"项目"->"构建步骤"->"Enable QML debugging and profiling"复选框取消勾选;

  2. 使用release版本编译,因为release编译版本默认禁用QML调试器。


----------------------------------------------------------------------------------------------------------------------
我们尊重原创,也注重分享,文章来源于微信公众号:你才小学生,建议关注公众号查看原文。如若侵权请联系qter@qter.org。
----------------------------------------------------------------------------------------------------------------------

鲜花

握手

雷人

路过

鸡蛋

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了