Delphi使用Indy发送邮件示例
Delphi 的邮件发送功能,用 Indy 库搞定还是挺稳的。这个示例主要是教你怎么用 TIdSMTP 和 TIdMessage 两个组件配合 SMTP 协议发邮件。像注册验证、系统提醒这些场景都用得上,挺实用。
Indy 库是 Delphi 自带的老朋友了,网络协议支持得比较全面,发邮件主要靠 TIdSMTP 和 TIdMessage。组件拖一拖,属性填一填,连接发出就行,代码写起来也不复杂。
SMTP 的配置,其实重点就是设置好 Host、Port,还有邮箱的账号密码。用的是哪家邮箱服务商,查下他们的 SMTP 地址,照填就好。TLS 加不加,看你用的是哪个端口。
构建邮件也不难,From 是发件人,To 是收件人,还有 Subject 和 Body 搞定内容。要发附件?直接 Message.Attachments.Add 就行。
发邮件流程就是三步:Connect,Send,Disconnect。记得 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 配置哦,别忘了邮箱权限也得搞好。
评论区