IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Envoi de mails avec IdSMTP


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 93
    Par défaut Envoi de mails avec IdSMTP
    Bonjour,

    J'ai créé une application pour envoyé des mails sans utiliser Outlook.

    La connection au serveur SMTP semble se faire, mais l'envoi du mail ne se fait pas et renvoie une exception non identifié (chaine vide). Voici le code utilisé :

    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
     
    	TIdSMTP *IdSMTP1 = new TIdSMTP(this);
    	IdSMTP1->AuthType = atDefault;
    	IdSMTP1->ConnectTimeout = 5000;
    	IdSMTP1->Host = "mail.host.com";
    	IdSMTP1->Username = "user";
    	IdSMTP1->Password = "pass";
    	IdSMTP1->Port = 587;
     
            IdSMTP1->UseTLS = utNoTLSSupport;
            IdSMTP1->PipeLine = true;
     
     
    		IdSMTP1->Connect();
    		if (IdSMTP1->Connected())  ShowMessage("connect ok");
     
    	TIdMessage *IdMessage1 = new TIdMessage(this);
    	IdMessage1->UseNowForDate = true;
    	IdMessage1->CharSet = "utf-8";
    	IdMessage1->ContentTransferEncoding = "base64";
    	IdMessage1->ContentType = "multipart/mixed";
     
    	IdMessage1->Subject = "test envoi";
    	IdMessage1->Body->Add("test") ;
     
    	IdMessage1->From->Address = "monmail@mail.com";
    	IdMessage1->From->Domain = "mail.com";
    	IdMessage1->From->Name = "monNom";
    	IdMessage1->From->Text = "monmail@mail.com";
    	IdMessage1->From->User = "monmail";
     
    	IdMessage1->ReceiptRecipient->Address = "destin@live.fr";
    	IdMessage1->ReceiptRecipient->Domain = "live.fr";
    	IdMessage1->ReceiptRecipient->Name = "destin";
    	IdMessage1->ReceiptRecipient->Text = "destin@live.fr";
    	IdMessage1->ReceiptRecipient->User = "destin";
     
       try {
    	   IdSMTP1->Send(IdMessage1);
       } catch (Exception &e) {
    		ShowMessage(e.Message);
       }
     
     
    		IdSMTP1->Disconnect(true);
    		if (!IdSMTP1->Connected())  ShowMessage("disconnect ok");
    Les messages "connect ok" et "disconnect ok" sont bien affichés, mais aucun mail n'est reçu sur l'adresse d'envoi.

    Merci pour vos conseils.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Par défaut
    Salut

    D apres Pottiez dans un vieux message
    AuthentificationType : atLogin
    UserId : ton login SMTP
    Password : ton mot de passe de compte SMTP

    Essaies d envoyer vers un autre domaine que live , outlook ou hotmail .
    Microsoft pose souvent probleme

    Et aussi avoir une adresse valide coté from , ... , certains serveurs verifient

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 93
    Par défaut Nouveau Test idSMTP
    Salut,

    J'ai remplacé l'adresse live par la même adresse que le from

    L'adresse est valide, je n'ai fait que la modifier pour l'exemple de code posté

    Le pb persiste.

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Par défaut
    Quelle version de builder ? D indy ?

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 573
    Par défaut
    Composant dans Fastnet

    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
     
     
    if (NMSMTP1->Connected)
     { NMSMTP1->Disconnect();
       Label1->Caption= " Déconnecter ";
     }
     else
     {
      NMSMTP1->Host = "smtp.numericable.fr";
      NMSMTP1->UserID = "moi";
     
      NMSMTP1->Connect();
      Label1->Caption= " Connecter";
     }
     
     if (NMSMTP1->Connected)
     {
      NMSMTP1->SubType = mtPlain;
      NMSMTP1->PostMessage->FromAddress = "moi@numericable.fr";
      NMSMTP1->PostMessage->FromName = "moi";
     // NMSMTP1->PostMessage->ToAddress->Text = "lui@numericable.fr";
      NMSMTP1->PostMessage->ToAddress->Text = "lui@hotmail.com";
      NMSMTP1->PostMessage->Body->Text = "corps";
     
      // renvoi tout les  chemins et noms des fichiers se trouvant dans la liste
    //  NMSMTP1->PostMessage->Attachments->Text =
     
      NMSMTP1->PostMessage->Subject = "sujet";
      NMSMTP1->PostMessage->LocalProgram = "";
      NMSMTP1->SendMail();
      ShowMessage("Message envoyez vers machin"  );
     //====================================
     // obligatoire pour l'envoie
       NMSMTP1->Disconnect();
       Label1->Caption= " Deconnectez ";
     //====================================
     }
     else
      ShowMessage("Vous devez vous connecter avant d'envoyer votre message");

  6. #6
    Membre Expert
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Par défaut
    Salut, est-ce que tu as téléchargé l'exemple IdPOP3 / IdSMTP / IdMessage sur le site web d'Indy: http://www.indyproject.org/Sockets/Demos/index.EN.aspx

Discussions similaires

  1. idSMTP et envoie de mail avec fichiers
    Par gandf dans le forum C++Builder
    Réponses: 13
    Dernier message: 24/03/2010, 09h04
  2. [Mail] Probleme pour l'envoi de mails avec mime
    Par tof91 dans le forum Langage
    Réponses: 1
    Dernier message: 09/03/2006, 16h44
  3. Envoi de mail avec Lotus Notes depuis VB
    Par mdriesbach dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 09/11/2005, 15h29
  4. envoi de mail avec sql server
    Par the_new dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/03/2005, 18h56
  5. envoi de mail avec attachement de fichier
    Par GMI3 dans le forum Modules
    Réponses: 2
    Dernier message: 24/09/2003, 11h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo