Qt - Windows上的SSL错误

时间:2010-12-03 17:49:52

标签: windows qt openssl msvcr90d.dll

我的应用在Windows上抛出以下错误:

QSslSocket:无法调用未解析的函数SSLv3_client_method

QSslSocket:无法调用未解析的函数SSL_CTX_new

QSslSocket:无法调用未解析的函数SSL_library_init

QSslSocket:无法调用未解析的函数ERR_get_error

QSslSocket:无法调用未解析的函数ERR_error_string

我已经安装了VS C ++ Redistributables和OpenSSL,但我不知道如何告诉Qt动态链接openSSL。 我正在使用Windows 7上的Qt二进制文件和Qt Creator的LGPL版本(Linux版本工作正常)

2 个答案:

答案 0 :(得分:4)

出于某种原因,Qt与从Win32 OpenSSL安装项目下载的dll处理不当。正如我观察到应用程序在安装了Tortoise Svn的机器上运行顺利,我只是复制了Tortoise提供的dll,这对我来说效果非常好。

我知道,这些dll运行起来很奇怪,而Win32 OpenSSL安装项目中的那些没有,但是现在从Tortoise Svn安装文件夹中复制dll解决了我的问题。

答案 1 :(得分:4)

从此website下载最新的OpenSSL预构建二进制文件。

我使用 Win32 OpenSSL v0.9.8r Light ,因为有关v1版本的争论。 [客户端工具很好,你不需要完整的发行版]

确保安装dll,以便它们在Windows路径中可见。任一;

  • windows / system32目录
  • 应用程序目录
  • 或将dll的位置添加到路径环境变量

这适用于Qt v4.6.2