Bonjour tout le monde !

Voilà, j'essai de créer un petit programme qui me permettra d'envoyer des e-mails mais j'ai quelques soucis.

J'ai un message d'erreur "authorization failed (#5.7.0)" lorsque j'essai d'envoyer un mail avec le composant Indy SMTP de Delphi 2007.

Pour ce faire, j'utilise mon compte Yahoo. Voici comment je procède :
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
 
procedure TforFenetre.butEnvoiMailClick(Sender: TObject);
var IdMessage: TIdMessage;
begin
  IdMessage:= TIdMessage.Create(Application);
  try
    // Que mettre ici ? Je suis sous Delphi 2007 et atLogin n'est pas connu
    // Pour yahoo, il lui faut une connexion sécurisé SSL, que mettre ?
    IdSMTP.AuthType := atDefault; //atNone; atSASL;
    IdSMTP.Username := 'jerome.stcharles@yahoo.fr';
    IdSMTP.Password := 'XXXXXX'; // Je mets mon mot de passe
    IdSMTP.Host := 'smtp.mail.yahoo.fr';
    IdSMTP.Port := 25; //587; J'ai essayé avec le port 587 et j'ai le même soucis
    IdSMTP.Connect;
 
    // Petit test permettant de savoir si je suis connecté
    if IdSMTP.Connected then
         ShowMessage('Connecté')
    else ShowMessage('Déconnecté');
 
    with IdMessage do
    begin
      Body.Assign(Memo.Lines); // Le texte du mail se situe dans un mémo
 
      // Je m'envoi un e-mail à moi-même (ceci doit fonctionner)
      // J'ai essayé de mettre une autre adresse pour le destinataire, j'ai exactement le même soucis
      From.Text := 'jerome.stcharles@yahoo.fr'; // Celui qui envoi (expéditeur) : je met mon adresse e-mail
      Recipients.EMailAddresses := 'jerome.stcharles@yahoo.fr'; // Celui qui reçoit (destinataire) : je met mon adresse e-mail
 
      Subject := 'Envoi email : essai'; // Le sujet du message
      Sender.Text := 'jerome' ; // Nom de l'expéditeur
    end;
 
    try
      IdSMTP.Send(IdMessage); // J'envoi l'email
    except
      on e:exception do
        showMessage(e.Message);  //Je récupère le message d'erreur en cas de problème
    end;
  finally
    FreeAndNil(IdMessage); // Je libère l'objet dans tous les cas
  end;
end;
Est-ce que je merde quelque part ? J'ai lu sur google que yahoo nécessite une connexion sécurisé SSL. Mais dans mon composant SMTP, je n'ai le chois qu'entre 3 choses : atNone, atDefault et atSASL. Je ne peux pas mettre atLogin. (Info : Lorsque je met atSASL, il faut que je renseigne la propriété SASLMechanisms : mais que mettre ?!)

============================================
J'ai essayé d'envoyer un e-mail en TELNET et je n'arrive pas non plus. (Je dois être un gros naze grrrrrr)
Voici comment je procède :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
telnet smtp.mail.yahoo.fr 587
=> Réponse : 220 smtp106.mail.ukl.yahoo.com ESMTP
HELO essaijsc
=> Réponse : 250 smtp005.mail.ukl.yahoo.com
MAIL FROM: <jerome.stcharles@yahoo.fr>
=> Réponse : 530 authentication required - for help go to http://help.yahoo.com/help/us/mail/pop/pop-11.html
Autre info, j'ai eu une seule seule fois, le message ci-dessous après avoir entrer MAIL FROM...
=> Réponse : 502 unimplemented (#5.5.1)

// Concernant HELO/EHLO
J'ai essayé HELO essaijsc ou EHLO essaijsc
- je met n'importe quoi, est-ce qu'il faut mettre quelque chose en particulier ?

Quand je met EHLO, il me marque :
250-smtp102.mail.ukl.yahoo.com
250-AUTH LOGIN PLAIN XYMCOOKIE
250-PIPELINING
250-8BITMIME

==> Que mettre après ceci ? Lorsque je met MAIL FROM...il me donne une erreur :/

Merci de m'éclaicir.