要实现Delphi发送邮件,可以使用Indy组件库中的TIdSMTP和TIdMessage组件。
首先,在Delphi的Form中添加TIdSMTP和TIdMessage组件。
然后,设置TIdSMTP组件的属性,包括Host(SMTP服务器地址),Port(SMTP服务器端口),Username(SMTP服务器用户名),Password(SMTP服务器密码)等。
接下来,设置TIdMessage组件的属性,包括From(发件人地址),Recipients(收件人地址),Subject(邮件主题),Body(邮件内容)等。
最后,调用TIdSMTP组件的Send方法发送邮件。
以下是一个示例代码:
uses
IdSMTP, IdMessage, IdExplicitTLSClientServerBase, IdSSLOpenSSL;
procedure TForm1.Button1Click(Sender: TObject);
var
SMTP: TIdSMTP;
Msg: TIdMessage;
begin
SMTP := TIdSMTP.Create(nil);
Msg := TIdMessage.Create(nil);
try
SMTP.Host := 'smtp.example.com';
SMTP.Port := 25;
SMTP.Username := 'your_username';
SMTP.Password := 'your_password';
Msg.From.Address := 'sender@example.com';
Msg.Recipients.Add.Address := 'recipient@example.com';
Msg.Subject := 'Test Email';
Msg.Body.Text := 'This is a test email.';
SMTP.Connect;
try
SMTP.Send(Msg);
finally
SMTP.Disconnect;
end;
finally
SMTP.Free;
Msg.Free;
end;
end;
在上述代码中,需要将smtp.example.com
替换为实际的SMTP服务器地址,your_username
和your_password
替换为实际的SMTP服务器登录信息,sender@example.com
和recipient@example.com
替换为实际的发件人和收件人地址。
注意:发送邮件需要SMTP服务器的支持,且需要与SMTP服务器的网络连接正常。另外,某些SMTP服务器可能需要使用SSL或TLS加密连接,可以使用TIdSSLIOHandlerSocketOpenSSL组件来实现加密连接。