前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >解决QML debugging is enabled.Only use this in a safe environment警告

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

作者头像
Qt君
发布2019-07-15 20:33:27
5.2K0
发布2019-07-15 20:33:27
举报
文章被收录于专栏:跟Qt君学编程跟Qt君学编程

解决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调试器:
代码语言:javascript
复制
Qt4版本: CONFIG -= declarative_debugQt5版本: CONFIG -= qml_debug
  1. 在界面"项目"->"构建步骤"->"Enable QML debugging and profiling"复选框取消勾选;
  2. 使用release版本编译,因为release编译版本默认禁用QML调试器。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Qt君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 为什么会有这个警告?
  • 注意
  • 解决方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档