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 d'un mail automatiquement


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm� Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activit� : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Par d�faut Envoi d'un mail automatiquement
    Bonjour � vous,
    Dans mon application je g�re aussi les garanties des pc de mon parc informatique. Dans cette application je rentre la date d'achat de mon mat�riel et la date de fin de la garantie, ce que je voudrais faire c'est lorsque l'on arrive � 1 mois avant la fin de garantie c'est envoyer un mail automatiquement sans que l'on est � remplir au responsable du parc disant que la garantie est pratiquement termin�e pour ce poste. Je vous remercie par avance de l'aide que vous pourrez m'apporter.

  2. #2
    Membre �clair�

    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    472
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : France

    Informations forums :
    Inscription : Septembre 2002
    Messages : 472
    Par d�faut yop
    Salut,
    Il y a des composants et des exemples fournis avec C++ Builder. Le composant s'appelle : NMSMTP et l'exemple se trouve ici : C:\Program Files\Borland\CBuilder6\Examples\FastNet\SMTP
    Sinon, tu peux utiliser aussi le groupe de composants Indy qui se trouve ici : http://www.indyproject.org/download/Files/Indy9.html
    Cordialement,
    MaTHieU_

  3. #3
    Membre confirm� Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activit� : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Par d�faut
    J'ai d�j� regard� l'exemple de builder mais comme bien souvent je trouve que ces exemples sont vraiment complexe et non commenter dans le code. Pour moi ce n'est pas �vident � comprendre avec cela. Surtout que c'est en anglais. Je cherche juste � faire un truc simple c'est envoyer un mail avec un message enregistrer � toujours la m�me personne (administrateur du parc) lorsq'une machine arrive en fin de garantie. Merci de vos r�ponses.

  4. #4
    Membre r�gulier
    Inscrit en
    Mai 2004
    Messages
    8
    D�tails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 8
    Par d�faut
    Salut,
    avec le composant TNMSMTP (dans FastNet) tu peux envoyer un mail de la mani�re suivante :

    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
     
          // Connexion Si on n'est pas connecté
          if (!FormMail->NMSMTP1->Connected)
          {
             // Initialisation
             FormMail->NMSMTP1->Host   = config_->host_;   // Hote distant
             FormMail->NMSMTP1->Port   = config_->port_;   // Port : 25
             FormMail->NMSMTP1->UserID = config_->userId_; // identifiant : facultatif
             FormMail->NMSMTP1->Connect();
          }
     
          // Si on est connecté
          if (FormMail->NMSMTP1->Connected)
          {
             // Adresse électronique de l'expéditeur du message
             FormMail->NMSMTP1->PostMessage->FromAddress = config_->adresseExp_;
             // Nom de l'expéditeur du message électronique.
             FormMail->NMSMTP1->PostMessage->FromName    = config_->nomExp_;
             // Insertion de l'adresse de destination
             FormMail->NMSMTP1->PostMessage->ToAddress->Add(config_->adresseDest_);
     
             // Titre du mail
             FormMail->NMSMTP1->PostMessage->Subject = config_->titre_;
             // Insertion de toutes les lignes du corps de l'e-mail
             int nbLignes = config_->corps_->Count;
             for (int i = 0; i < nbLignes; ++i)
                FormMail->NMSMTP1->PostMessage->Body->Add(config_->corps_->Strings[i]);
     
             // Attachements de tous les fichiers à joindre au mail
             int nbFichiers = config_->fichiers_->Count;
             for (int i = 0; i < nbFichiers; ++i)
                NMSMTP1->PostMessage->Attachments->Add(config_->fichiers_->Strings[i]);
     
             // Envoi du mail
             FormMail->NMSMTP1->SendMail();
     
              // Déconnexion
              FormMail->NMSMTP1->Disconnect();
           }
    o� FormMail est la form contenant le composant TNMSMTP

  5. #5
    Membre confirm� Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activit� : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Par d�faut
    Merci Lydie, je pense qu'au va y arriver avec ta solution, donc j'ai remplie tout les champs de NMSMTP1 dans l'inspecteur de objets. Mais malheureusement cela ne compile pas, j'ai l'erreur suivante symbol _config non d�finie, que faire ??
    Merci de l'aide.

  6. #6
    Membre r�gulier
    Inscrit en
    Mai 2004
    Messages
    8
    D�tails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 8
    Par d�faut
    Oui, d�sol� j'ai fait un copier/coller d'une partie de mon code.
    config_ est une instance de classe que j'ai cr��.
    � la place de config_-> met la configuration que tu veux.

    Je met les attributs de la config pour les types :

    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
     
          /** Chemin vers le fichier d'intialisation    */
          String chemin_;
     
          /** Hote de connexion                             */
          String host_;
          /** Port de connexion                              */
          int port_;
          /** Identifiant de l'utilisateur                    */
          String userId_;
     
          /** Adresses electroniques des destinataires  */
          TStringList* adresseDest_;
          /** Adresse electronique de l'exediteur          */
          String adresseExp_;
          /** Nom de l'expéditeur                                */
          String nomExp_;
     
          /** Liste des fichiers à attacher au mail          */
          TStringList* fichiers_;
          /** Titre du mail                                           */
          String titre_;
          /** Corps du texte                                        */
          TStringList* corps_;
    J'esp�re que c'est un peu plus clair

  7. #7
    Membre confirm� Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activit� : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Par d�faut
    Cela veut dire quoi ??
    config_ est une instance de classe que j'ai cr��.
    Comment d�clarer config_??

  8. #8
    Membre r�gulier
    Inscrit en
    Mai 2004
    Messages
    8
    D�tails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 8
    Par d�faut
    Ce que je veux dire c'est qu'il suffit de remplacer les config_->... par les valeurs souhait�es

    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
     
          // Connexion Si on n'est pas connecté 
          if (!FormMail->NMSMTP1->Connected) 
          { 
             // Initialisation 
             FormMail->NMSMTP1->Host   = "195.60.31.12";   // Hote distant 
             FormMail->NMSMTP1->Port   = 25;               // Port : 25 
             FormMail->NMSMTP1->UserID = "Moi";            // identifiant : facultatif 
             FormMail->NMSMTP1->Connect(); 
          } 
     
          // Si on est connecté 
          if (FormMail->NMSMTP1->Connected) 
          { 
             // Adresse électronique de l'expéditeur du message 
             FormMail->NMSMTP1->PostMessage->FromAddress = "[email protected]"; 
             // Nom de l'expéditeur du message électronique. 
             FormMail->NMSMTP1->PostMessage->FromName    = "Moi"; 
             // Insertion de l'adresse de destination 
             FormMail->NMSMTP1->PostMessage->ToAddress->Add("[email protected]"); 
     
             // Titre du mail 
             FormMail->NMSMTP1->PostMessage->Subject = "Titre du mail"; 
             // Insertion de la ligne du corps de l'e-mail 
             FormMail->NMSMTP1->PostMessage->Body->Add("Contenu du mail");
     
             // Attachement du fichier à joindre au mail 
             NMSMTP1->PostMessage->Attachments->Add("Fichier.txt"); 
     
             // Envoi du mail 
             FormMail->NMSMTP1->SendMail(); 
     
             // Déconnexion 
             FormMail->NMSMTP1->Disconnect(); 
           }
    Ca devrait marcher

  9. #9
    Membre confirm� Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activit� : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Par d�faut
    Merci beaucoup Lydie cela fonctionne tr�s bien, il reste juste un dernier d�tail pour que j'aimerais savoir, j'ai mis tout mon code dans un bouton afin pour test� que mon message parte lorsque je clique sur ce bouton l� tout fonctionne tr�s bien. Mon probl�me c'est si je reclique sur ce bouton sans quitter l'application et bien l� mon message part toujours mais dans le body le message est doubler, si je recommence tripler .... Alors que si je ferme l'application apr�s chaque appui sur le bouton et que je relance mon application je n'ai as ce probl�me. Comment r�soudre cela ??
    Merci vraiment beaucoup de toute cette aide sans laquelle mon application n'aurais pas fonctionner sur cette partie.

  10. #10
    Membre r�gulier
    Inscrit en
    Mai 2004
    Messages
    8
    D�tails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 8
    Par d�faut
    Oui, c'est normal � chaque Add, la donn�e est rajout� � la suite des autres d�j� ins�r�es. Il faut donc vider la structure avant :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
       // Vide les informations précédements insérées
       FormMail->NMSMTP1->PostMessage->ToAddress->Clear();
       FormMail->NMSMTP1->PostMessage->Body->Clear();
       FormMail->NMSMTP1->PostMessage->Attachments->Clear();

  11. #11
    Membre confirm� Avatar de batmat86
    Homme Profil pro
    Charge de clientele
    Inscrit en
    Octobre 2003
    Messages
    239
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activit� : Charge de clientele

    Informations forums :
    Inscription : Octobre 2003
    Messages : 239
    Par d�faut
    Merci vraiment beaucoup car ta soulution fonctionne tr�s bien et n'est pas lourde pour le code. Merci beaucoup.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [SP-2010] Envoi d'e-mail automatique
    Par swann7 dans le forum SharePoint
    R�ponses: 6
    Dernier message: 18/08/2010, 13h08
  2. [MediaWiki] Envoi d'e-mails automatiques
    Par jadey dans le forum EDI, CMS, Outils, Scripts et API
    R�ponses: 1
    Dernier message: 26/08/2009, 13h58
  3. envoie d'un mail automatique
    Par pythfred dans le forum Macros et VBA Excel
    R�ponses: 3
    Dernier message: 30/06/2008, 16h10
  4. envoi d'un mail automatiquement
    Par jonnyboy dans le forum Servlets/JSP
    R�ponses: 15
    Dernier message: 09/07/2007, 10h39
  5. [Upload] Envoi d'un mail automatique...
    Par FredMines dans le forum Langage
    R�ponses: 7
    Dernier message: 26/03/2006, 17h13

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