Bonjour tout le monde,
J'ai un petit souci.
J'ai programmé cette fonction qui a déjà fonctionné. J'ai même vérifié les données qui y transite et elles sont correcte.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
 
//Fonction qui aura en charge l'envoie d'email.
void __fastcall TForm1::SendMail(AnsiString Sujet, AnsiString Texte, char Host[50], char Port[50], char Identifiant[50], char Mdp[50], char Emeteur[50], char Recepteur[50], int Format)
{
        //Si la connexion est ouverte, on ferme la connexion.
        if(Form1->IdSMTP1->Connected()) { Form1->IdSMTP1->Disconnect(); }
 
        //Si la connexion est fermé.
        if(!Form1->IdSMTP1->Connected())
        {
                //Déclaration au composant des données saisies et passé en paramettre.
                Form1->IdSMTP1->Host = Host;
                Form1->IdSMTP1->Port = atoi(Port);
                Form1->IdSMTP1->UserId = Identifiant;
                Form1->IdSMTP1->Password = Mdp;
 
                //Si le nom d'utilisateur et le mot de passe ne sont pas valide.
                if((Form1->IdSMTP1->UserId.Trim().Length() == 0) && (Form1->IdSMTP1->Password.Trim().Length() == 0))
                {
                        //Utilisera pas l'authentification.
                        Form1->IdSMTP1->AuthenticationType = atNone;
                }
                else
                {
                        //Utilisera l'authentification.
                        Form1->IdSMTP1->AuthenticationType = atLogin;
                }
 
                //Lance la connexion.
                Form1->IdSMTP1->Connect();
        }
 
        //Si l'authentification est validé.
        if(Form1->IdSMTP1->Authenticate())
        {
                //Message en bas de programme pour indiqué que l'authentification c'est déroulé correctement.
                Form1->InfoStatusBar("Identification distante.", "Identification réussi.");
 
                //Charge dans le composant IdMessage1 les informations correspondantes.
                Form1->IdMessage1->From->Address = Emeteur;
                Form1->IdMessage1->From->Name = Form1->NomLogiciel + " V: "+ Form1->VersionLogiciel;
                //Form1->IdMessage1->ReplyTo->EMailAddresses = Emeteur;
                Form1->IdMessage1->Recipients->Add();
                Form1->IdMessage1->Recipients->EMailAddresses = Recepteur;
                Form1->IdMessage1->Recipients = Form1->IdMessage1->Recipients;
                Form1->IdMessage1->Subject = Sujet;
                Form1->IdMessage1->Body->Add(Texte);
                Form1->IdSMTP1->Send(Form1->IdMessage1);
                Form1->IdMessage1->Clear();
        }
        else
        {
                //Erreur d'identification.
                ShowMessage("Erreur d'identification!");
        }
 
        //Déconnecte le composant IdSmtp.
        Form1->IdSMTP1->Disconnect();
}
En testant mon code, je suis tomber sur cette erreur:
Le projet HTMaiL.exe a provoqué une classe d'exception EIdProtocolReplyError avec le message '503 Error: authentification not enabled'.
Je ne voie pas pourquoi cela me provoque ainsi une classe d'exception vue que ce code fonctionnais avant sans problème majeur.

Auriez-vous une solution pour éradiqué ce problème s'il vous plait ?
Je vous remercie pour vos indications.
Cordialement.