Envoyer un mail en SMTP

cs_sofoot Messages postés 7 Date d'inscription mercredi 20 mai 2009 Statut Membre Dernière intervention 23 mai 2012 - 6 juil. 2009 à 09:06
cs_TeniX Messages postés 118 Date d'inscription mercredi 24 décembre 2003 Statut Membre Dernière intervention 11 décembre 2011 - 9 juil. 2009 à 19:03
Bonjour,
J'éssaye de faire un programme qui envoie un mail par smtp sous C++ Builder 6. voici mon programme :
fichier.h :

//---------------------------------------------------------------------------

#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <classes.hpp>
#include <controls.hpp>
#include <stdctrls.hpp>
#include <forms.hpp>
#include <extctrls.hpp>
#include <graphics.hpp>
#include
#include
#include
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TButton *Button1;
TMemo *Memo1;
TIdSMTP *IdSMTP1;
TIdMessage *IdMessage1 ;
TEdit *Edit1;
TEdit *Edit2;
TEdit *Edit3;
TEdit *Edit4;
TEdit *Edit5;
void __fastcall Button1Click(TObject *Sender);
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif




fichier.cpp :
//---------------------------------------------------------------------------// Envoyer un mail

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{

IdSMTP1->Host = Edit1->Text;
IdSMTP1->UserId = Edit2->Text;
IdSMTP1->Password = Edit3->Text;
IdMessage1->Body = Memo1->Lines;
IdMessage1->From->Name = "toto";
IdMessage1->From->Address Edit4->Text; IdMessage1->Recipients->EMailAddresses Edit5->Text;
IdMessage1->Subject = "test ccm par exemple ";
IdSMTP1->Connect();
IdSMTP1->Send(IdMessage1);
IdSMTP1->Disconnect();
}


Mes problèmes sont que quand je compiles mon programme, il m'affiche "Field Form1->IdMessage1 does not have a corresponding component. Remove the declaration ?" pour IdMessage1 et IdSMTP1. A ces 2 questions je répond non. Le programme ce lance sans problème. Mé lorsque j'appuie sur le bouton1, le programme m'affiche l'erreur suivante : "Project Project.exe raised exception class EAccessViolation with message 'Access violation at address 400068A4 in module 'rtl60.bpl'. Write of address 000000AC'. Process stopped. Use Step or Run to continue."
Je souhaiterais savoir où sont mes erreurs.
Si quelqu'un a une réponse, je l'en remercie d'avance.


Tout ordinateur est obsolète au plus tard à son déballage.</vcl.h>

</graphics.hpp></extctrls.hpp></forms.hpp></stdctrls.hpp></controls.hpp></classes.hpp>

1 réponse

cs_TeniX Messages postés 118 Date d'inscription mercredi 24 décembre 2003 Statut Membre Dernière intervention 11 décembre 2011 2
9 juil. 2009 à 19:03
Je ne vois pas quand tu initialise tes pointeurs ? peut être c'est le problème du au crash de ton prog.

Ciao
0
Rejoignez-nous