我已经从这个链接下载并安装了OpenSSL:http://slproweb.com/products/Win32OpenSSL.html
然后我在.pro文件中添加了以下行:
LIBS += -LC:/OpenSSL-Win32/lib -llibcrypto -llibssl
我可以确认QT能够链接库,因为如果我在它们的名称上随机添加一个字母,它将失败,并表示没有找到所说的库
然后我复制了";libcrypto-1_1.dll";以及";libssl-1.dll";从OpenSSL bin文件夹到我的应用程序文件夹。
我将#include <QSslSocket>
添加到我的文件中,但当我调用QSslSocket::supportsSsl()
时,它总是返回false。我做错了什么?
注意:我正在清除构建之间的项目,以确保QT使用了的最新更改
通过以下步骤解决问题:
OpenSSL库首先在可执行文件,然后在Windows系统目录中(通常C: \Windows\system32(,最后在PATH环境变量。
一旦我将dll复制到system32文件夹,它就开始工作了(即使我在PATH变量AND可执行文件夹中有它们(
更多信息可以在这里找到:https://doc.qt.io/qt-5/windows-requirements.html