哪个 Openssl 版本与 Indy 10 版本 5519 和 5438 兼容?
Which Openssl version compatible with Indy 10 version 5519 and 5438?
我在 Delphi 5 下使用 Indy 10 build 5438 和 OpenSSL 1.0.2m。
使用一些(不是所有)电子邮件帐户发送 TLS v1.2 电子邮件时出现一些问题,我想尝试为 Indy 10 升级 OpenSSL DLL 文件,但我不知道哪个一个兼容。
哪个是与 Indy 10 build 5438 兼容的最新(!)OpenSSL 版本?
我已经尝试使用 fulld_5.bat
在 Delphi 5 下安装最新的 Indy 10 build 5519,但失败了:
IdIMAP4.pas(2958) Error: Undeclared identifier: 'LLTextBuf'
IdIMAP4.pas(2958) Error: Incompatible types
IdIMAP4.pas(3185)
IdIMAP4.pas(3697)
IdIMAP4.pas(4209)
IdIMAP4.pas(4721)
IdIMAP4.pas(5233)
IdIMAP4.pas(5745)
IdIMAP4.pas(6257)
IdIMAP4.pas(6769)
IdIMAP4.pas(7251)
IndyProtocols50.dpk(267) Fatal: Could not compile used unit 'IdIMAP4.pas'
Error!
Indy 10 使用标准的 OpenSSL DLL。任何 1.0.2 版本的 OpenSSL 都与 Indy 兼容 (Indy does not support OpenSSL 1.1.x yet)。但是,预构建版本的 OpenSSL 1(在没有 MS Visual C++ 运行时依赖项的情况下构建)在 Indy 的 Fulgan 镜像上可用:
1:在撰写本文时,可用的最新版本是 1.0.2t。
至于 IdIMAP4.pas
错误,那是最近一次代码签入中的错字。在第 2958 行,对 LLTextBuf
的引用需要改为 LTextBuf
。
LUseNonSyncLiteral := LCanUseNonSyncLiteral and ((not LNonSyncLiteralIsLimited) or (Length({LLTextBuf}LTextBuf) <= 4096)); // <-- change LLTextBuf to LTextBuf
我现在已经在官方 Indy 代码(SVN 修订版 5520)中修复了这个问题。
我在 Delphi 5 下使用 Indy 10 build 5438 和 OpenSSL 1.0.2m。
使用一些(不是所有)电子邮件帐户发送 TLS v1.2 电子邮件时出现一些问题,我想尝试为 Indy 10 升级 OpenSSL DLL 文件,但我不知道哪个一个兼容。
哪个是与 Indy 10 build 5438 兼容的最新(!)OpenSSL 版本?
我已经尝试使用 fulld_5.bat
在 Delphi 5 下安装最新的 Indy 10 build 5519,但失败了:
IdIMAP4.pas(2958) Error: Undeclared identifier: 'LLTextBuf'
IdIMAP4.pas(2958) Error: Incompatible types
IdIMAP4.pas(3185)
IdIMAP4.pas(3697)
IdIMAP4.pas(4209)
IdIMAP4.pas(4721)
IdIMAP4.pas(5233)
IdIMAP4.pas(5745)
IdIMAP4.pas(6257)
IdIMAP4.pas(6769)
IdIMAP4.pas(7251)
IndyProtocols50.dpk(267) Fatal: Could not compile used unit 'IdIMAP4.pas'
Error!
Indy 10 使用标准的 OpenSSL DLL。任何 1.0.2 版本的 OpenSSL 都与 Indy 兼容 (Indy does not support OpenSSL 1.1.x yet)。但是,预构建版本的 OpenSSL 1(在没有 MS Visual C++ 运行时依赖项的情况下构建)在 Indy 的 Fulgan 镜像上可用:
1:在撰写本文时,可用的最新版本是 1.0.2t。
至于 IdIMAP4.pas
错误,那是最近一次代码签入中的错字。在第 2958 行,对 LLTextBuf
的引用需要改为 LTextBuf
。
LUseNonSyncLiteral := LCanUseNonSyncLiteral and ((not LNonSyncLiteralIsLimited) or (Length({LLTextBuf}LTextBuf) <= 4096)); // <-- change LLTextBuf to LTextBuf
我现在已经在官方 Indy 代码(SVN 修订版 5520)中修复了这个问题。