ros*_*mcm 3 delphi smtp indy10
我的应用程序使用Indy TiDSMTP客户端组件发送电子邮件.但是,在某些情况下,客户无法或不愿意设置SMTP服务器和端口,用户名等,因此我希望提供一种发送电子邮件的解决方案,而无需任何人设置任何内容.
我尝试了TIDSMTPRelay演示但是我需要explcitly输入DNS服务器IP地址(当我这样做时,它失败了"Project SMTPRelay.exe引发了异常类EIdHostRequired并带有消息''").我希望Indy解决方案不需要用户输入任何设置 - 只要他们可以访问互联网就可以"开箱即用".
我还需要提供什么?
TIA,R
Rem*_*eau 11
您必须直接将电子邮件发送到收件人邮件服务器.这需要执行DNS查找以检索每个收件人域的MX记录.Indy的TIdSMTPRelay组件为您处理(通过TIdDNSResolver内部使用组件).
查询机器当前的DNS配置没有平台中立的方式.这需要特定于平台的API.Indy现在没有任何东西来实现自动化,尽管我认为它不会超出未来版本的可能性范围.
你看到的例外是由TIdTCPClient.Connect().使用时不应该手动调用TIdSMTPRelay.在确定Host每个接收者域的连接后,在内部调用它.您需要自己设置DNSServer属性,可选地设置RelaySender属性,然后调用该Send()方法.没有其他的.
| 归档时间: |
|
| 查看次数: |
3704 次 |
| 最近记录: |