Qt要求在系统上安装开放的ssl库.在debian/ubuntu中,当我使用apt安装open ssl时,一切正常.但是当我在Windows中编译我的应用程序时,SSL功能不可用我可以通过执行来验证这一点
QSslSocket::supportsSsl()
如何让它在Windows中运行?我从http://www.slproweb.com/products/Win32OpenSSL.html下载并安装了open ssl,但它仍然返回false.
您必须在项目中添加OpenSSL lib.在Windows Qt中没有OpenSSL lib.(我认为这是一个法律问题).您可以在发布的URI中找到OpenSSL开发人员库.如果您正在编译32位框架,则需要下载的是Win32 OpenSSL v1.0.1e
这就是我项目中的内容.
QT += core gui network win32{ LIBS += -LC:/OpenSSL-Win32/lib -lubsec INCLUDEPATH += C:/OpenSSL-Win32/include }
所以经过很长一段时间我想出了问题所在:
这两个库需要与Windows系统文件夹中的可执行文件位于同一文件夹中(我认为是system32):
libeay32.dll ssleay32.dll
您将在OpenSSL文件夹的\ bin中找到它们,因为我复制了这两个库,它可以工作