zoukankan      html  css  js  c++  java
  • QT出现QML debugging is enabled. Only use this in a 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调试器:
    Qt4版本: CONFIG -= declarative_debug
    Qt5版本: CONFIG -= qml_debug
    1. 在界面"项目"->"构建步骤"->"Enable QML debugging and profiling"复选框取消勾选;
    2. 使用release版本编译,因为release编译版本默认禁用QML调试器。

    参考:https://cloud.tencent.com/developer/article/1463935

  • 相关阅读:
    node03
    node02
    node01
    Vue-router重修02
    Vue-router重修01
    Vue重修02
    VUE重修01
    利用表达式目录树进行实体映射
    C#托管堆和垃圾回收
    C# 异步锁
  • 原文地址:https://www.cnblogs.com/BASE64/p/14467083.html
Copyright © 2011-2022 走看看