Envoyer un mail avec les composants indy

Soyez le premier à donner votre avis sur cette source.

Vue 12 012 fois - Téléchargée 1 767 fois

Description

Petit programme permettant d'envoyer des mails à partir des composants Indy.
Ces composants sont téléchargeables ici : http://www.nevrona.com/Indy/

Source / Exemple :


with IdMessage1 do
  begin
  IdMessage1.Body.Assign(Memo1.Lines);
  IdMessage1.From.Text := Edit1.Text;
  IdMessage1.Recipients.EMailAddresses := Edit1.Text;
  IdMessage1.Subject := Edit5.Text;
  IdSMTP1.AuthenticationType := atLogin;
  IdSMTP1.UserID :=  Edit3.Text;
  IdSMTP1.Password := MaskEdit1.Text;
  end;
  IdSMTP1.Host :=  Edit4.Text;
  IdSMTP1.Port := 25;

  StatusBar1.Panels[0].Text := 'Connection au serveur ...';
   IdSMTP1.Connect;
   try
    IdSMTP1.Send(IdMessage1);
   finally
    IdSMTP1.Disconnect;
   end;
  StatusBar1.Panels[0].Text := 'Message envoyer !';

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Grandalleau
Messages postés
4
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
2 juillet 2008

20 déc. 2009 à 18:08
Bonjour,
Avec Delphi 2009, les 2 lignes:
IdSMTP1.AuthenticationType := atLogin;
IdSMTP1.UserID := Edit3.Text;
sont rejetées. Toutes mes tentatives pour corriger sont veines.
J'ai essayé:
iDSMPT1.AuthType:= atLogin;
idSMTP1.Username:=Edit3.text;
Ca ne marche pas. Quelle est la solution?
Merci d'avance.
nethacker
Messages postés
288
Date d'inscription
mardi 2 mai 2006
Statut
Membre
Dernière intervention
12 octobre 2011

12 juil. 2007 à 15:01
re salut,
j'ai trouvé un autre probleme sur ta source !

----------------------------------------------------
* with IdMessage1 do
* begin
* IdMessage1.Body.Assign(Memo1.Lines);
* IdMessage1.From.Text := Edit1.Text;
* IdMessage1.Recipients.EMailAddresses := Edit1.Text;
* IdMessage1.Subject := Edit5.Text;
* IdSMTP1.AuthenticationType := atLogin;
* IdSMTP1.username := Edit3.Text; //remplacer userid par username !!!
* IdSMTP1.Password := MaskEdit1.Text;
* end;
* IdSMTP1.Host := Edit4.Text;
* IdSMTP1.Port := 25;
*
* StatusBar1.Panels[0].Text := 'Connection au serveur ...';
* IdSMTP1.Connect;
* try
* IdSMTP1.Send(IdMessage1);
* finally
* IdSMTP1.Disconnect;
* end;
* StatusBar1.Panels[0].Text := 'Message envoyé !'; //envoyé et non pas envoyer ! c'est le passé mon pote !

-------------------------------------------------------------------
nethacker
Messages postés
288
Date d'inscription
mardi 2 mai 2006
Statut
Membre
Dernière intervention
12 octobre 2011

4 nov. 2006 à 13:46
exactement l'adresse email c'est pas la meme chose que le texte !!!
ni69
Messages postés
1418
Date d'inscription
samedi 12 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2010
13
22 nov. 2004 à 17:19
J'ai repéré une erreur dans ton code...

IdMessage1.Recipients.EMailAddresses := Edit1.Text;
doit être remplacé par : IdMessage1.Recipients.EMailAddresses := Edit2.Text;
sinon ça envoie le courrier à celui qui l'écrit...

@+
Nico
achovovich
Messages postés
17
Date d'inscription
mercredi 7 août 2002
Statut
Membre
Dernière intervention
4 janvier 2006

12 févr. 2004 à 11:07
juste pour signaler que ton with ne sert a rien dans ce cas, non?
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.