Delphi使用Indy发送邮件示例

Delphi 的邮件发送功能,用 Indy 库搞定还是挺稳的。这个示例主要是教你怎么用 TIdSMTPTIdMessage 两个组件配合 SMTP 协议发邮件。像注册验证、系统提醒这些场景都用得上,挺实用。

Indy 库是 Delphi 自带的老朋友了,网络协议支持得比较全面,发邮件主要靠 TIdSMTPTIdMessage。组件拖一拖,属性填一填,连接发出就行,代码写起来也不复杂。

SMTP 的配置,其实重点就是设置好 HostPort,还有邮箱的账号密码。用的是哪家邮箱服务商,查下他们的 SMTP 地址,照填就好。TLS 加不加,看你用的是哪个端口。

构建邮件也不难,From 是发件人,To 是收件人,还有 SubjectBody 搞定内容。要发附件?直接 Message.Attachments.Add 就行。

发邮件流程就是三步:ConnectSendDisconnect。记得 try...except...finally 把异常兜住,网络一抖或者认证失败,就全靠它保驾护航。

贴一段代码你可以直接用:

SMTP := TIdSMTP.Create(nil);
try
  SMTP.Host := 'your.smtp.server.com';
  SMTP.Port := 587;
  SMTP.Username := 'your_email@example.com';
  SMTP.Password := 'your_password';
  SMTP.UseTLS := utUseExplicitTLS;

Message := TIdMessage.Create(nil); try Message.From.Address := 'your_email@example.com'; Message.Recipients.EMailAddresses := 'recipient@example.com'; Message.Subject := '邮件主题'; Message.Body.Text := '邮件正文';

SMTP.Connect; SMTP.Send(Message); finally Message.Free; end; finally SMTP.Disconnect; SMTP.Free; end;

如果你下载了压缩包,里面还放了完整的 Delphi 工程,跑一遍你就更清楚流程了。记得用你自己的 SMTP 配置哦,别忘了邮箱权限也得搞好。

zip 文件大小:433.69KB