Delphi Indy 10 smtp erreur « Impossible d'authentifier à l'heure actuelle »
Question
J'utilise ce morceau de code pour envoyer un message de test à partir delphi indy. J'ai un TidSMTP, TIdMessage et IdSSLIOHandlerSocketOpenSSL;
Dans le code belowe si je l'ai mis à utiliser gmail avec ssl il fonctionne très bien, mais dès que je remplace mes les détails du serveur avec mon serveur de messagerie cPanel detials il fait erreur de travail non:
« incapable d'authentifier à l'heure actuelle ».
je mêmes détails j'utiliser pour configurer mon compte dans les perspectives 2007. Voici le code
Détails IdSSLIOHandlerSocketOpenSSL.
method := sslvsslv3
mode := sslmUnassigned
//rest default values
procedure Tfrmnotification.btnSendClick(Sender: TObject);
var
IdMsg : TIdMessage;
begin
begin
IdMsg := TIdMessage.Create(nil);
try
with TIdSMTP.Create(nil) do
try
// UserName := 'something@gmail.com';
// Password := 'pass';
// Host := 'smtp.gmail.com';
// IOHandler := IdSSLIOHandlerSocketOpenSSL;
// Port := 587;
UserName := 'something@sasra.co.za';
Password := 'password';
Host := 'outgoing server detials';// same as outlooks
IOHandler := IdSSLIOHandlerSocketOpenSSL;
Port := 465;// this is correct port
UseTLS:= utUseExplicitTLS;
IdMsg.Body.Add('test');
IdMsg.Recipients.emailAddresses := 'something@gmail.com';
IdMsg.Subject := 'test';
IdMsg.From.Address := 'something@sasra.co.za';
IdMsg.From.Name := 'john';
Connect;
Send(IdMsg);
Disconnect;
finally
Free;
end;
finally
IdMsg.free;
end;
showmessage('done');
end;
Toute aide serait appricated.
La solution
Le port 465 est utilisé pour SMTP sur SSL implicite. Vous avez défini UseTLS à utUseExplicitTLS. La valeur correcte devrait (le plus probable) être utUseImplicitTLS.