Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IntraWeb的SSL问题-Delphi 2007_Delphi_Ssl_Delphi 2007_Intraweb - Fatal编程技术网

IntraWeb的SSL问题-Delphi 2007

IntraWeb的SSL问题-Delphi 2007,delphi,ssl,delphi-2007,intraweb,Delphi,Ssl,Delphi 2007,Intraweb,在过去的一段时间里,我一直在尝试在我的IW程序上使用SSL,我不断遇到“无法加载SSL库”的问题。在这个问题上,我已经采纳了我能找到的每一条建议,但仍然没有什么乐趣。我已经在本地目录和system32中尝试了建议的DLL 有人对我应该使用什么OpenSSL DLL有明确的答案吗?它们的构造是什么?还有其他想法吗 Indy:更新到昨天的最新快照 IntraWeb:已安装库存D2007 这是在Vista机器上运行的,如果这有什么区别的话 蒂亚 Trevor您需要OpenSSL DLL(0.9.8i为

在过去的一段时间里,我一直在尝试在我的IW程序上使用SSL,我不断遇到“无法加载SSL库”的问题。在这个问题上,我已经采纳了我能找到的每一条建议,但仍然没有什么乐趣。我已经在本地目录和system32中尝试了建议的DLL

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

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

这是在Vista机器上运行的,如果这有什么区别的话

蒂亚

Trevor

您需要OpenSSL DLL(0.9.8i为我工作,但我不使用Vista),您可以下载(正如我认为您所建议的,Indy DLL不适用于IW9,IW9是与D2007捆绑的版本)

安装后,将ssleay32.dll和libeay32.dll从system32复制到应用程序目录

如果仍然不起作用:

  • 您的servercontroller的ssl端口是否设置为443
  • 您的证书pw是否与服务器控制器的ssl证书pw匹配
  • servercontroller.sslversion是否设置为sslv23
  • 您是否尝试过编译/运行SSL(standalonessl)的原子化演示应用程序
希望这有帮助


编辑:一旦这项功能正常运行,您将希望将sslversion更改为sslv3,并让用户关闭v2。

今天在Embarcadero新闻组的intraweb论坛上回答了同样的问题,Chad Z.“Kudzu”Hower发布了(没有任何解释-只是链接)

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


希望这有帮助。

解决:

看起来问题是一个bpl在我的机器上浮动

以下是我采取的步骤,以防其他人在使用D2007和预装库运行独立服务器时遇到困难:

  • 从你的机器上清除印地的所有痕迹——印地的某个地方有一个howto
  • 从subversion存储库下载Indy 10中继
  • 按照说明安装Indy
  • 从atozed下载最新的IW9-您需要一个密钥
  • 安装它-让它冲击你当前的安装 现在,对于OpenSSL DLL:

  • 从这里获取:
    • 这些对我来说很有效
  • 确保您的防火墙允许端口443通过(或您选择的任何端口) 在这一点上,我能够编译和运行演示和我的应用程序

    谢谢你的帮助


    Trevor

    我是构建上述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:

    从今天起,您可以使用此版本:

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


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

    确实如此-非常感谢。今天下午我将讨论这个问题。介意我现在问一下如何在intraweb中安装ssl吗?我通过互联网搜索,但在互联网上没有什么好东西。我可以请你注意一下吗?