QT TLS initialization failed

qt使用QNetworkAccessManager下载文件(给出的链接可以在浏览器里面下载文件),下载失败, 提示"TLS

initialization

failed"通常是由于Qt在使用HTTPS进行文件下载时,未能正确初始化TLS(安全传输层协议)连接。这个问题通常与SSL/TLS库的配置有关。

背景:win11+qt5

解决这个问题需要依次检查以下几点是否有做到:

1. 确保系统安装了最新版本的Open SSL库

QT通常依赖于系统的openssl库来处理SSL/TLS连连接。

检验系统是否安装了openssl库,打开cmd,输入openssl version 查看版本 或者 where openssl查看命令出处。这种一般是加了path的,但是观察下来都是其他软件顺带用到的,而我们的程序需要的ssl的库是找不到的。

2. 确保使用的qt库不要太旧

较旧的qt版本可能存在SSL/TLS相关bug。建议升级到新的qt版本。

3. 检查Qt项目配置

.pro文件中,配置了 QT += network

4. 配置openssl库文件

拷贝openssl的dll 文件到你得可执行文件目录。(libssl-1_1.dll,libcrypto-1_1.dll,libssl-3-x64.dll,libcrypto-3-x64.dll)

5. 启用证书验证

如果你得代码中禁用了证书验证(如使用了QSslSocket::VerifyNone),尝试启用验证。

相关推荐
mabing9938 小时前
Qt 生成条纹图
开发语言·qt
Fu_Lin_9 小时前
Qt 嵌入式从零基础到精通总纲
开发语言·qt·嵌入式·qt嵌入式
茯苓gao10 小时前
嵌入式开发笔记:Qt信号槽机制深度解析——从原理到实战的全方位指南
开发语言·笔记·嵌入式硬件·qt·学习
布朗克16810 小时前
Go 入门到精通-31-编码与序列化
开发语言·qt·golang·编码与序列化
Lyndon-李大鹏12 小时前
QT-VS环境
开发语言·qt
神仙别闹15 小时前
基于QT(C++)实现Windows 自启动项查看和分析
c++·windows·qt
小许同学记录成长17 小时前
QGIS二次开发技术文档
图像处理·qt·信息可视化·无人机
初阳7852 天前
【Qt】SQLite——数据库介绍
数据库·qt·sqlite
Quz2 天前
QML 信号与槽:直接绑定与跨文件通信
qt·编程语言·设计
GIS阵地2 天前
QgsSingleBandPseudoColorRenderer 完整详解(QGIS 3.40.13 C++)
开发语言·前端·c++·qt·qgis