5

带有 Indy 10.5.8.0 的 Delphi 7。

如果这是重复以前提出的问题,我深表歉意,但我无法解决这个问题。

我正在使用 Indy TidMessageBuilderHTML 发送带有嵌入图像的 HTML 电子邮件来构建我的 html 电子邮件。这非常酷,到目前为止效果很好。

我现在的问题是迎合需要 SSL/TLS 身份验证的 SMTP 服务器。我对 OPENSSL DLL 文件有很多问题,现在看来 32 位版本不能在 64 位等上运行。我想要一个避免使用 DLL 文件的解决方法。(最好我需要将其保留为单个 exe。应用程序)。

那么我的问题是:我想按原样使用 Indy V10,而不必发送 OPENSSL dll。有没有办法做到这一点?是否没有支持 Indy ssl (TIdSSLIOHandlerSocketOpenSSL) 的可用 delphi SSL 库?

此外,我愿意接受其他建议,这些建议将有助于我的嵌入图像的 html 电子邮件。谢谢你。

4

1 回答 1

2

您询问了支持 TIdSSLIOHandlerSocketOpenSSL 类的库,但这正是在其 TIdSSLIOHandlerSocketOpenSSL.StartSSL 方法中需要外部 DLL 的类。

最简单的解决方案是提供 DLL(32 位或 64 位版本),并在运行时检查 DLL 的存在,然后再尝试调用“SendMail”函数,这样您就可以向用户呈现更易于理解的错误消息,准确指出哪些文件预计会被您的应用程序找到。

于 2012-05-25T17:56:47.343 回答