Qt 5.13.2 qt.network.ssl: QSslSocket::connectToHostEncrypted: TLS initialization failed


我遇到的問題是在QT5.7下Qt Creator可以的,但是裝了Qt 5.13.2(5.14.0) 在Qt Creator下編譯運行不行。

qDebug看下

qDebug() << QSslSocket::supportsSsl() << QSslSocket::sslLibraryBuildVersionString() << QSslSocket::sslLibraryVersionString();

看到這個說明OK

true "OpenSSL 1.1.1b 26 Feb 2019" "OpenSSL 1.1.1c 28 May 2019"

看到如下

false "OpenSSL 1.1.1b 26 Feb 2019"

您遇到問題和我一樣,以下可能適合你

解決辦法是根據自己的構建環境,把\Qt\Qt5.13.2\Tools\QtCreator\bin libssl-1_1.dll和libcrypto-1_1.dll兩個文件 復制到 相應的\Qt\Qt5.13.2\5.13.2\mingw73_32\bin目錄下,, 發布的時候注意要復制到可執行文件夾中。

那么問題又來了,64位的怎么辦,辦法是有的,

去網站https://slproweb.com/products/Win32OpenSSL.html

下載相應的版本,我下載的是如下版本Win64OpenSSL-1_1_1d.exe

https://slproweb.com/download/Win64OpenSSL-1_1_1d.exe

安裝過程中選擇庫文件目錄,我選擇的安裝到軟件目錄

最后捐助不要勾選任何就可以了

把\OpenSSL-Win64\bin libcrypto-1_1-x64.dll和libssl-1_1-x64.dlll兩個文件 復制到 相應的\Qt\Qt5.13.2\5.13.2\mingw73_64\bin目錄下

最后發布軟件的時候,也需要把這兩個文件復制到可執行文件同目錄下。

附上已經打包好的文件,免安裝了,解壓使用,直接拿去使用吧。

參考:https://blog.csdn.net/lanxiaziyi/article/details/98760827

www.mamicode.com/info-detail-2895440.html

http://www.luyixian.cn/news_show_252661.aspx

https://www.cnblogs.com/fancyop/p/qt_ssl_q.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM