Qt 5.15.2中qmlwebsocketclient示例SSL Socket不支持问题求助
解决Qt 5.15.2 MSVC2019 64bit下WebSocket SSL不支持问题
核心原因
Qt的MSVC版本默认未携带或未正确加载OpenSSL相关库,导致SSL功能无法启用。
具体解决步骤
步骤1:获取匹配的OpenSSL库
需要64位的OpenSSL 1.1.x版本动态库:libssl-1_1-x64.dll和libcrypto-1_1-x64.dll。可以从Qt安装目录的Tools/OpenSSL/Win_x64/bin路径查找(安装Qt时需勾选OpenSSL组件),或从官方编译包获取对应版本。步骤2:部署库文件
将上述两个dll文件复制到qmlwebsocketclient示例的编译输出目录(如release或debug文件夹),或Qt Creator运行时的工作目录下。步骤3:验证SSL支持
在项目代码中添加以下代码验证:#include <QSslSocket> qDebug() << "SSL support available:" << QSslSocket::supportsSsl(); qDebug() << "OpenSSL version:" << QSslSocket::sslLibraryVersionString();若输出
true及对应版本号,说明SSL支持已正常启用。步骤4:检查项目配置(可选)
确保项目.pro文件包含QT += websockets network;若需静态链接OpenSSL,需在编译Qt时配置对应参数(动态库部署更简便)。
额外注意事项
- Debug版本需对应部署带
d后缀的OpenSSL Debug库(如libssl-1_1-x64d.dll),临时测试也可使用Release库。 - 必须使用64位库,与Qt版本位数严格匹配。
内容的提问来源于stack exchange,提问作者sam.hay
相关产品推荐
相关产品推荐

