【问题标题】:SSL Issues with IntraWeb - Delphi 2007IntraWeb 的 SSL 问题 - Delphi 2007
【发布时间】:2008-10-17 17:35:17
【问题描述】:

最近一段时间,我一直在尝试使用 SSL 来处理我的 IW 程序,但我一直遇到“无法加载 SSL 库”。我已经听从了我能找到的关于这个主题的每一条建议,但仍然没有快乐。我已经在本地目录和 system32 中尝试了建议的 DLL。

有人对我应该使用哪些 OpenSSL DLL 有明确的答案吗?它们的构造是什么?还是有其他想法?

Indy:昨天更新到最近的快照 IntraWeb:已安装库存 D2007

这是在 Vista 机器上运行的,如果这有什么不同的话。

TIA,

特雷弗

【问题讨论】:

  • 介意我现在如何在 Intraweb 中安装 ssl 吗?我通过互联网搜索,但在 Intraweb 上没有任何好处。那么我可以请您注意一下吗?

标签: delphi ssl delphi-2007 intraweb


【解决方案1】:

已解决:

看起来问题出在我的机器上浮动的 bpl。

以下是我采取的步骤,以防其他人难以让独立服务器与 D2007 和预安装的库一起运行:

  1. 从您的机器上删除所有 Indy 痕迹 - Indy 网站上的某处有一个操作指南;
  2. 从 subversion 存储库下载 Indy 10 主干
  3. 按照说明安装 Indy;
  4. 从 atozed 下载最新的 IW9 - 您需要密钥;
  5. 安装它 - 让它破坏您当前的安装;

现在,对于 OpenSSL DLL:

  1. 从这里获取它们:http://www.slproweb.com/download/Win32OpenSSL_Light-0_9_8i.exe
    • 这些对我来说效果很好;
  2. 确保您的防火墙允许端口 443 通过(或您选择的任何端口);

此时,我能够编译并运行演示和我的应用程序。

感谢大家的帮助。

特雷弗

【讨论】:

    【解决方案2】:

    您需要 OpenSSL dll(0.9.8i 为我工作,但我没有使用 Vista),您可以下载 here(我认为您的建议是,Indy dll 不适用于 IW9 ,也就是D2007捆绑的版本)。

    安装完成后,将ssleay32.dll和libeay32.dll从system32复制到你的应用目录。

    如果还是不行:

    • 您的服务器控制器的 ssl 端口是否设置为 443?
    • 您的证书密码与服务器控制器的 ssl 证书密码匹配吗?
    • servercontroller.sslversion 是否设置为 sslv23?
    • 您是否尝试过为 SSL(独立)编译/运行 AtoZed 演示应用程序?

    希望这会有所帮助。

    编辑:一旦你得到这个工作,你会想要将 sslversion 更改为 sslv3,并让用户关闭 v2。

    【讨论】:

      【解决方案3】:

      Chad Z.“Kudzu”Hower 今天在 Embarcadero 新闻组的内部论坛上回复了相同的问题时发布了this link(没有任何解释 - 只是链接)。

      该页面为 SSL 库的特殊构建提供了 this link

      希望这会有所帮助。

      【讨论】:

      • 确实如此 - 非常感谢。今天下午我要玩弄它。
      【解决方案4】:

      我是构建上述特殊版本的 IntraWeb SSL dll 的人。为了完成上面的答案,让我解释一下为什么需要特殊构建:

      以前的 Indy 和 IntraWeb 版本使用稍微修改过的 OpenSSL 版本。修改包括与例如相关的几个功能。当时在 Delphi 或 Indy 中不可用的时区计算。

      因此,当有人将一组未修改的 OpenSSL dll(不是 Indy OpenSSL dll)与旧的 Indy 或 IntraWeb 版本一起使用时,由于缺少导出,他会收到“无法加载 SSL 库”错误。

      自从我们在 Delphi 2009 中使用 Indy 版本以来,不再需要这些更改。这就是为什么当前的 Indy 版本 - 来自 SVN 甚至是 Delphi 2007 - 与 IntraWeb 一起也可以与来自 slproweb 的 dll 一起使用(不包括这些修改)。

      但请注意,slproweb dll确实需要 MS VC++ 运行时 dll

      为了避免这种情况,我经常为 Indy 创建一组自己的 dll: ftp://ftp.fulgan.com/SSL/

      从今天开始,您应该可以使用此版本了: ftp://ftp.fulgan.com/SSL/openssl-1.0.0d-i386-win32-rev2.zip

      我的 dll 集不需要安装 MC VC 运行时。

      因此可以肯定地说,任何比 Delphi 2009 更新的 Indy 版本和/或相应的 SVN 修订版都可以安全地与 slproweb(具有 VC 依赖项)或我们自己的(来自 fulgan 镜像)dll 一起使用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-17
        • 2012-10-28
        • 2015-06-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多