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

Delphi Discussion :

Envoi de Mail avec TurboDelphi Explorer


Sujet :

Delphi

  1. #1
    Membre habitué
    Avatar de Oncle_Pete
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    246
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 246
    Points : 175
    Points
    175
    Par défaut Envoi de Mail avec TurboDelphi Explorer
    Bonjour,


    Je souhaiterais pouvoir en cliquant sur un bouton, envoyer un mail depuis mon appli Delphi (developpee avec TurboDelphi Explorer, ce qui signifie que je n'ai pas les composants Indy).

    J'ai glane pas mal d'exemples de codes, mais en general, ceux-ci ne font qu'ouvrir la messagerie par defaut en affectant les infos necessaires (adresse destinatare, objet, fichier joint, corps de texte,....

    Auriez-vous une solution ?

    Merci

    Oncle_Pete
    Experience is the best teacher !!

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 190
    Points : 218
    Points
    218
    Par défaut
    Les composants INDY permettent d'envoyer des mails

    tu as les composants INDY mais tu ne peux pas les utiliser dans l'éditeur, il faut que que tu code tout a la main.

    essaye voir

    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
     
     
    uses
    ...
     
    IdMessage, IdBaseComponent, IdComponent, IdTCPConnection,
      IdTCPClient, IdMessageClient, IdSMTP
     
    ....
     
    procedure EnvoyerMailIndy(serveurSmtp,adresseSource,adresseDestination,sujet,text:string;noport:integer;User,Pwd:string;filename:string='');overload;
    Var 
      IdSMTP1: TIdSMTP;
      IdMessage1: TIdMessage;
      i:integer;
      idText2: TidText;
      Attach:TIdAttachment;
    Begin
      IdMessage1:=TIdMessage.Create(nil);
      IdSMTP1:=TIdSMTP.Create(nil);
      Attach:=nil;
      idText2 := TidText.Create(idMessage1.MessageParts);
      idText2.ContentType := 'text/plain'; 
      idText2.Body.Text := text;
      With IdMessage1 do 
        Begin 
          CharSet:='iso-8859-1'; 
          Encoding:=meMIME; 
          ContentType:= 'multipart/mixed';  
          From.Text:=adresseSource;
          Recipients.EMailAddresses:=adresseDestination;
          Subject:=sujet;
          if filename<>'' then begin
            TIdAttachment.Create(IdMessage1.MessageParts,filename);
          end;
        End;
      IdSMTP1.Host:=serveurSmtp;
      IdSMTP1.Port:=noport;
      IdSMTP1.Username:=User;
      IdSMTP1.Password:=Pwd;
      IdSMTP1.Connect(1000);
      try
        IdSMTP1.send(IdMessage1);
      finally
        { Et on pense a se déconnecter }
        IdSMTP1.Disconnect;
      End;
      { et a libérer les objets créés }
      if Assigned(attach) and (attach<>nil) then Attach.Free;
      IdMessage1.Free; 
      IdSMTP1.Free; 
    End;
    @+

  3. #3
    Membre habitué
    Avatar de Oncle_Pete
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    246
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 246
    Points : 175
    Points
    175
    Par défaut
    Merci WolffN

    J'ai recopie ton code dans un projet neutre (donc propre), ait ajoute les chemins de recherche pour l'ensemble de tes USES
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    IdMessage, IdBaseComponent, IdComponent, IdTCPConnection,
      IdTCPClient, IdMessageClient, IdSMTP
    Ils correspondent pour info aux repertoires
    C:\Program Files\Borland\BDS\4.0\source\Indy10\Protocols
    C:\Program Files\Borland\BDS\4.0\source\Indy10\core
    C:\Program Files\Borland\BDS\4.0\source\Indy10\system

    Malgré cela j'ai des erreurs de compil dès qu'on fait reference aux variables TidText et TIdAttachment;

    Les messages sont :
    [Pascal Error] Unit1.pas(68): E2003 Undeclared identifier: 'TidText'
    [Pascal Error] Unit1.pas(69): E2003 Undeclared identifier: 'TIdAttachment'

    Qu'ai-je oublie de declarer ?
    Quel est le probleme ?

    Merci

    Oncle Pete
    Experience is the best teacher !!

Discussions similaires

  1. [Mail] Probleme pour l'envoi de mails avec mime
    Par tof91 dans le forum Langage
    Réponses: 1
    Dernier message: 09/03/2006, 16h44
  2. Envoi de mail avec pièce attachée par SMTP
    Par yess78 dans le forum IIS
    Réponses: 4
    Dernier message: 09/12/2005, 13h33
  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