支持UTF-8或Unicode的Delphi SMTP组件

时间:2009-01-30 14:15:39

标签: delphi unicode smtp delphi-2009 indy

Delphi 2009附带的Indy 10 SMTP组件appears不能正确支持主题和正文中的unicode。

有没有人知道一个好的选择,或者是否有人对Indy10做了必要的修改以解决这个问题?

8 个答案:

答案 0 :(得分:3)

我还要注意,大多数邮件服务器可能无法在邮件主题行中正确处理Unicode。我还没有看到任何关于此的真实统计数据,但我的猜测是,一个非常健康的邮件服务器仍然期望ascii主题行,因为我认为这是RFC的定义。

(邮件正文当然可以编码以确保它通过。)

答案 1 :(得分:3)

您可以使用Indy 10(在俄罗斯字符集上测试)查看此解决方案

http://dev-doc.blogspot.com/2012/08/delphi-indy-10-ssl-and-encoding-issues.html

答案 2 :(得分:2)

Indy 10自D2009初始发布以来已经更新,现在可以更好地处理Unicode。看看Indy的SVN中当前的Tiburon快照。

答案 3 :(得分:1)

我肯定会从nSoftware.com看看IPWorks。他们的最新版本应该完全符合Delphi 2009标准。

答案 4 :(得分:1)

我会看Synapse,它能正确处理主体和身体中的unicode。您需要通过SVN存储库下载存储库,该存储库比网站上列出的下载版本更新。 SVN版本包括对Delphi 2009的支持。

答案 5 :(得分:1)

EasyMail表示它支持Rob提到的RFC 2047处理非ascii主题行:

http://www.componentsource.com/products/easymail-objects/summary.html

答案 6 :(得分:0)

最近在Indy 10的IdHeaderoderUTF类中发现了一个错误,它会阻止UTF-7和UTF-8在编码包含Unicode字符的电子邮件标头时正常工作。

答案 7 :(得分:-4)

感谢大家的建议,我想我找到了一个真正有效的组件。它是一个ActiveX而不是Delphi组件,但它的作用。好又简单。

该组件是Chilkat SMTP componentcode example here完全符合我的要求而且有效!!!