> Done.
>>
>>
Still not done here.
See my code please, work with INDY and dont work with Synapse, what im doing
wrong there?
{$IFDEF USE_INDY_MAIL}
procedure TSendEmail.SendMail;
begin
IdMessage := TIdMessage.Create(Nil);
IdMessage.Subject := fsSubject;
IdMessage.Recipients.EmailAddresses := fsTo;
IdMessage.From.Address := '[BOT]PetroBoxSetup Base Log
Sender';
IdMessage.Sender.Address := fsFrom;
TIdText.Create(IdMessage.MessageParts, fauxLines).ContentType :=
'text/plain';
/// 21/10/2009 Donald Shimoda - Establish SSL comunication
/// 21/10/2009 Donald Shimoda - Fix bug in MORFIK not compiling some used
units
If TIdExplicitTLSClient = TIdExplicitTLSClient Then ;
IdSSLIOHandlerSocketOpenSSL := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
try
IdSSLIOHandlerSocketOpenSSL.Destination :=
fsSmtpHost+':'+fsSmtpPort;
IdSSLIOHandlerSocketOpenSSL.Host := fsSmtpHost;
IdSSLIOHandlerSocketOpenSSL.MaxLineAction := maException;
IdSSLIOHandlerSocketOpenSSL.Port :=
StrtoInt(fsSmtpPort);
IdSSLIOHandlerSocketOpenSSL.DefaultPort := 0;
IdSSLIOHandlerSocketOpenSSL.SSLOptions.Method := sslvTLSv1;
IdSSLIOHandlerSocketOpenSSL.SSLOptions.Mode := sslmUnassigned;
IdSSLIOHandlerSocketOpenSSL.SSLOptions.VerifyMode := [];
IdSSLIOHandlerSocketOpenSSL.SSLOptions.VerifyDepth := 0;
except
exit;
end;
IdSMTP := TIdSMTP.Create(Nil);
IdSMTP.IOHandler := IdSSLIOHandlerSocketOpenSSL;
IdSMTP.Host := fsSmtpHost;
IdSMTP.Port := StrtoInt(fsSmtpPort);
IdSMTP.UseTLS := utUseExplicitTLS;
// IdSMTP.AuthType := atDefault;
IdSMTP.Username := fsSmtpUser;
IdSMTP.Password := fsSmtpPasswd;
IdSMTP.Connect;
IdSMTP.Send(IdMessage);
IdSMTP.Disconnect;
end;
{$ELSE}
procedure TSendEmail.SendMail;
begin
smtp := TSMTPSend.Create;
fauxLines.Insert(0, 'From: ' + fsFrom);
fauxLines.Insert(1, 'To: ' + fsTo);
fauxLines.Insert(2, 'Subject: ' + fsSubject);
smtp.UserName := fsSmtpUser;
smtp.Password := fsSmtpPasswd;
smtp.TargetHost := fsSmtpHost;
smtp.TargetPort := fsSmtpPort;
/// if enabled raise a exception on login phase
/// if not enabled raise a exception on mailfrom phase
smtp.FullSSL := True;
if not smtp.Login() then
raise ESMTP.Create('SMTP ERROR: Login:' + smtp.EnhCodeString);
if not smtp.StartTLS() then
raise ESMTP.Create('SMTP ERROR: StartTLS:' + smtp.EnhCodeString);
if not smtp.MailFrom(fsFrom, Length(fsFrom)) then
raise ESMTP.Create('SMTP ERROR: MailFrom:' + smtp.EnhCodeString);
if not smtp.MailTo(fsTo) then
raise ESMTP.Create('SMTP ERROR: MailTo:' + smtp.EnhCodeString);
if not smtp.MailData(fauxLines) then
raise ESMTP.Create('SMTP ERROR: MailData:' + smtp.EnhCodeString);
if not smtp.Logout() then
raise ESMTP.Create('SMTP ERROR: Logout:' + smtp.EnhCodeString);
end;
{$ENDIF}
Thanks for any help.
Donald
------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the
lucky parental unit. See the prize list and enter to win:
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
synalist-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/synalist-public