高度重视部门网站建设,wordpress聊天系统,龙岩做网站哪家最好,软件技术开发合同范本最近编写Qt Quick项目#xff0c;使用Qt6.7.2版本#xff0c;CMAKE编译#xff0c;开始QtCreator运行代码都没有问题#xff0c;访问https也正常#xff0c;但打出安装包后一试#xff0c;发现https访问不了#xff0c;尴尬#xff01;#xff01;
查看了相关日志发现…最近编写Qt Quick项目使用Qt6.7.2版本CMAKE编译开始QtCreator运行代码都没有问题访问https也正常但打出安装包后一试发现https访问不了尴尬
查看了相关日志发现
WARG 16:50:02.340 qt.network.ssl: No functional TLS backend was found WARG 16:50:02.340 qt.network.ssl: No TLS backend is available WARG 16:50:02.340 qt.network.ssl: No functional TLS backend was found WARG 16:50:02.340 qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
……
WARG 16:50:02.604 qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed
网上搜索发现一大堆人都说是openssl库缺少安装openssl对应库然后拷贝两个文件
libcrypto-3-x64.dll 与 libssl-3-x64.dll对运行目录下即可。具体过程网上一堆比如用
QSslSocket::sslLibraryBuildVersionString();
查看当前QT版本支持的openssl库的版本号用
QSslSocket::supportsSsl(); 查看系统是否支持ssl,
一开始在win11上qt6.7.2调用以上两个接口返回的是
secure channel (ntddi: 0xa00000c) 和 true
这时你自己随意下载个openssl的版本安装一下比如openssl3.3.2 ,安装后再去调用则会返回OpenSSL 3.0.7 1 Nov 2022 ---- true
本以后是自己用的openssl版本不一直导致即使用了两个库libcrypto、libssl也无法访问https,无奈自己又下载opensll3.0.7的源码编译一堆操作。但最终并无鸟用……
奇怪的项目是在QtCreator运行下判断openssl的两个接口有返回OpenSSL 3.0.7 1 Nov 2022 ---- true但单独点击运行程序运行却没有输出supportsSsl返回false
……其实很简单这是QT6的一个bug
Qt 6.2.0 - beta 3 - Qt Network: qt.network.ssl: No functional TLS backend was found | Qt Forum 某些Qt库未拷贝到程序运行目录而已哪些库呢就是Qt安装目录下对应的tls下的三个库
C:\Qt\6.7.2\msvc2019_64\plugins\tls 尤其是qopensslbackend.dll 只要有它就可以访问https了
所以解决方案就是
将tls这个目录拷贝到运行程序的目录之下即可。
201 手机版
网页图片视频学术词典地图更多工具