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 :

[Indy] Mail HTML avec images incluses


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    r0d
    r0d est actuellement connect�
    Membre exp�riment�

    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2004
    Messages
    4 299
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Ao�t 2004
    Messages : 4 299
    Billets dans le blog
    2
    Par d�faut [Indy] Mail HTML avec images incluses
    Bonjour,

    je cherche un exemple de code qui utilise Indy (composant IdSMTP), et qui permet d'envoyer un mail HTML avec des images "embedded", c'est � dire ce sont des images envoy�es en pi�ces jointes mais gr�ce aux protoles mime et cid, elles sont affich�es directement dans le mail (mail qui finalement n'est qu'une page HTML).

    J'ai trouv� des exemples en VB et en Delphi, mais rien en C++. Et dans les exemples fournis avec Indy, il n'y a pas d'exemple qui fait �a.

    Quelqu'un a-t-il une id�e, un lien?
    Merci par avance.

  2. #2
    Expert confirm�

    Avatar de pottiez
    Homme Profil pro
    D�veloppeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : D�veloppeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par d�faut
    Salut,
    ton exemple avec Delphi utilise-t-il aussi le composant Indy ?
    Si oui, il est possible de traduire le code Delphi en BCB, si c'est les m�me version des composants Indy c'est encore mieux

  3. #3
    r0d
    r0d est actuellement connect�
    Membre exp�riment�

    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2004
    Messages
    4 299
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Ao�t 2004
    Messages : 4 299
    Billets dans le blog
    2
    Par d�faut
    Citation Envoy� par pottiez Voir le message
    Salut,
    ton exemple avec Delphi utilise-t-il aussi le composant Indy ?
    Oui, mais je ne suis pas s�r qu'il fasse exactement ce que je veux. C'est celui-ci.
    Citation Envoy� par pottiez Voir le message
    Si oui, il est possible de traduire le code Delphi en BCB, si c'est les m�me version des composants Indy c'est encore mieux
    Comment puis-je savoir quelle version de Indy j'ai? (c'est Borland c++ builder 6.0 ... oui je sais... mais j'ai pas le choix )

  4. #4
    Expert confirm�

    Avatar de pottiez
    Homme Profil pro
    D�veloppeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : D�veloppeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par d�faut
    De base dans BCB 6 c'est la version 8.0.25 d'Indy, je vais essayer de te transcrire ca en BCB

  5. #5
    r0d
    r0d est actuellement connect�
    Membre exp�riment�

    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2004
    Messages
    4 299
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Ao�t 2004
    Messages : 4 299
    Billets dans le blog
    2
    Par d�faut
    wah merci

    Sinon j'ai trouv� du code sur google.code.search qui semble correspondre mieux � ce que je veux faire:

    http://www.google.com/codesearch/p?h...a=N&cd=3&ct=rc
    ( fonction MontaCabecalhoEmailModelo1, ligne 156 )

  6. #6
    Expert confirm�

    Avatar de pottiez
    Homme Profil pro
    D�veloppeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : D�veloppeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par d�faut
    Voila le code traduit en BCB (d�sol� pour le d�lai, je suis aller manger entre deux )

    On part du principe que tu as pos� un composant TIdSMTP sur ta fen�tre et que celui-ci est appel� SMTP, ainsi qu'un bouton, l'envoie du message se fait dans l'�v�nement OnClick du bouton.

    La configuration du composant TIdSMTP est la suivante :
    AuthentificationType : atLogin
    UserId : ton login SMTP
    Password : ton mot de passe de compte SMTP

    fichier .h de la fen�tre (en gros j'y ai rajout� la d�claration du TIdMessage)
    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
    //---------------------------------------------------------------------------
     
    #ifndef Unit5H
    #define Unit5H
    //---------------------------------------------------------------------------
    #include <Classes.hpp>
    #include <Controls.hpp>
    #include <StdCtrls.hpp>
    #include <Forms.hpp>
    #include <IdBaseComponent.hpp>
    #include <IdComponent.hpp>
    #include <IdMessageClient.hpp>
    #include <IdSMTP.hpp>
    #include <IdTCPClient.hpp>
    #include <IdTCPConnection.hpp>
    //---------------------------------------------------------------------------
    class TForm1 : public TForm
    {
    __published:    // Composants gérés par l'EDI
      TIdSMTP *SMTP;
      TButton *Button1;
      void __fastcall Button1Click(TObject *Sender);
      void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
    private:    // Déclarations de l'utilisateur
      TIdMessage* IdMsgSend;
    public:        // Déclarations de l'utilisateur
      __fastcall TForm1(TComponent* Owner);
    };
    //---------------------------------------------------------------------------
    extern PACKAGE TForm1 *Form1;
    //---------------------------------------------------------------------------
    #endif
    .cpp de la fen�tre
    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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    //---------------------------------------------------------------------------
     
    #include <vcl.h>
    #pragma hdrstop
     
    #include "Unit5.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
      : TForm(Owner)
    {
      IdMsgSend = new TIdMessage(NULL);
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
      IdMsgSend->Clear();
     
      IdMsgSend->ContentType = "Multipart/Alternative";
      IdMsgSend->Subject = "Sujet du message";
     
     
      // add a plain text message part
      TIdText *idtTextPart = new TIdText(IdMsgSend->MessageParts,NULL);
      idtTextPart->ContentType = "text/plain";
      idtTextPart->Body->Add("This is the plain part of the message."); 
     
      TStringList* body = new TStringList();
      body->Add("Test");
     
      // add the HTML message part
      idtTextPart = new TIdText(IdMsgSend->MessageParts,body);
      idtTextPart->ContentType = "text/html";
     
      IdMsgSend->From->Address = "[email protected]";
      IdMsgSend->From->Name = "Me";
     
      IdMsgSend->Sender->Address = "[email protected]";
      IdMsgSend->Sender->Name = "Me";
     
     
      // add the recipients  TIdEmailAddressList
     
      IdMsgSend->Recipients->Clear();
      IdMsgSend->Recipients->Add()->Address = "[email protected]";
      IdMsgSend->Recipients->Add()->Address = "[email protected]";
     
     
      IdMsgSend->Subject = "Some Subject";
     
      // add an attachment
      TIdAttachment* attachment = new TIdAttachment(IdMsgSend->MessageParts, "C:\\Documents and Settings\\alexandrep\\Mes documents\\Mes images\\fleche.JPG");
     
      SMTP->Host = "smtp.isp.com";
      SMTP->Port = 25;
     
        SMTP->Connect();
     
        bool test = SMTP->Connected();
     
        bool test2 = SMTP->Authenticate();
     
        SMTP->Send(IdMsgSend);
     
        SMTP->Disconnect();
     
      ShowMessage("Message Sent");
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
    {
      delete IdMsgSend;
    }
    //---------------------------------------------------------------------------
    Il faudrait test� avec ton client messagerie pour voir si l'image est bien affich� dans le message, car je n'en suis pas sur, sinon ce code est fonctionnelle

    Le code Google � l'air d'�tre plus adapt� � ce que tu recherche

Discussions similaires

  1. R�ponses: 0
    Dernier message: 10/03/2010, 18h02
  2. R�ponses: 1
    Dernier message: 19/11/2009, 09h30
  3. R�ponses: 4
    Dernier message: 02/04/2007, 18h17
  4. [CSS] Envoi de mail html avec CSS et image jointe
    Par firejocker dans le forum Mise en page CSS
    R�ponses: 1
    Dernier message: 03/03/2006, 08h53

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