大家请看这段代码,为什么老发不出去呢???(邮件发送失败),问题出现在哪呢??
procedure TForm1.Button1Click(Sender: TObject);
begin
idMessage.Body.Clear;
idMessage.Body.Add('mail test ');
idMessage.From.Address := '[email protected]';
idMessage.Recipients.EMailAddresses := '[email protected]';
idMessage.Subject := 'test'; idSMTP.AuthenticationType := atLogin;
idSMTP.Username := '[email protected]';
idSMTP.Password := 'xingxing';
idSMTP.Host :='smtp.t163.com';
idSMTP.Port := 25; try
idSMTP.Connect(-1);
idSMTP.Send(idMessage);
idSMTP.DisconnectSocket;
idSMTP.Disconnect;
idSMTP.Destroy;
showmessage('send mail ok');
except
idSMTP.Destroy;
idMessage.Destroy;
showmessage('mail send false');
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
idMessage.Body.Clear;
idMessage.Body.Add('mail test ');
idMessage.From.Address := '[email protected]';
idMessage.Recipients.EMailAddresses := '[email protected]';
idMessage.Subject := 'test'; idSMTP.AuthenticationType := atLogin;
idSMTP.Username := '[email protected]';
idSMTP.Password := 'xingxing';
idSMTP.Host :='smtp.t163.com';
idSMTP.Port := 25; try
idSMTP.Connect(-1);
idSMTP.Send(idMessage);
idSMTP.DisconnectSocket;
idSMTP.Disconnect;
idSMTP.Destroy;
showmessage('send mail ok');
except
idSMTP.Destroy;
idMessage.Destroy;
showmessage('mail send false');
end;
end;
在CONNECT时,还需将用户名与密码转加密后传送给服务器. idSMTP.Host :='smtp.t163.com'; 应为 smtp.163.com网上有现成的例子.