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

Composants VCL Delphi Discussion :

IdSMTP et TIdSSLIOHandlerSocketOpenSSL


Sujet :

Composants VCL Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 62
    Points
    62
    Par défaut IdSMTP et TIdSSLIOHandlerSocketOpenSSL
    Bonjour,

    J'ai placé les fichiers DLL (libeay32.dll et ssleay32.dll) dans le dossier projet;

    Le TIdSSLIOHandlerSocketOpenSSL n'est identifié ?

    J'ai trouvé un code ou on utilise TIdSSLIOHandlerSocketOpenSSL, pref ça fonctionne pas

    Voila le code

    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
    uses
     IdMessage, IdSMTP, IdSSLOpenSSL, IdGlobal, IdExplicitTLSClientServerBase;
     
     procedure SendEmail(const Recipients: string; const Subject: string; const Body: string);
     var
     SMTP: TIdSMTP;
     Email: TIdMessage;
     SSLHandler: TIdSSLIOHandlerSocketOpenSSL;
     begin
     SMTP := TIdSMTP.Create(nil);
     Email := TIdMessage.Create(nil);
     SSLHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
     
     try
     SSLHandler.MaxLineAction := maException;
     SSLHandler.SSLOptions.Method := sslvTLSv1;
     SSLHandler.SSLOptions.Mode := sslmUnassigned;
     SSLHandler.SSLOptions.VerifyMode := [];
     SSLHandler.SSLOptions.VerifyDepth := 0;
     
     SMTP.IOHandler := SSLHandler;
     SMTP.Host := 'smtp.gmail.com';
     SMTP.Port := 587;
     SMTP.Username := 'yourusername@gmail.com';
     SMTP.Password := 'yourpassword';
     SMTP.UseTLS := utUseExplicitTLS;
     
     Email.From.Address := 'yourusername@gmail.com';
     Email.Recipients.EmailAddresses := Recipients;
     Email.Subject := Subject;
     Email.Body.Text := Body;
     
     SMTP.Connect;
     SMTP.Send(Email);
     SMTP.Disconnect;
     
     finally
     SMTP.Free;
     Email.Free;
     SSLHandler.Free;
     end;
     end;
     
     procedure TForm1.Button1Click(Sender: TObject);
     begin
     SendEmail('recipient@whatever.com', 'Subject', 'Body');
     end;

  2. #2
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Désoler la boule de crystal est en panne, c'est quoi l'erreur ?

    (Puis c'est pas 995 le port SMTP en TLS chez Gmail ?)

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 62
    Points
    62
    Par défaut TIdSSLIOHandlerSocketOpenSSL
    Dans Indy 9 on a pas le compo TIdSSLIOHandlerSocketOpenSSL

    Je suppose que ça existe dans Indy 10, j'utilise D6, donc, j'ai du supprimé Indy8 de mon D6 et installé Indy9

    Le problème que je n'arrive pas à envoyer des mails avec NeufBox, bien sûr j'ai désactivé le filtrage de NeufBox !!!

    Merci

  4. #4
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Le plus simple serait d'installer Indy10 car tu utilises une version des composants qui à quand même presque 10 ans.
    Ce n'est pas étonnant que cela ne fonctionne pas avec les dernières évolutions du web et des mails.

  5. #5
    Membre averti
    Avatar de Pascal Fonteneau
    Profil pro
    gérant
    Inscrit en
    Février 2007
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : gérant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2007
    Messages : 139
    Points : 352
    Points
    352
    Par défaut Origine des Dlls
    Où as-tu trouvé les DLLs libeay32.dll et ssleay32.dll. Ce n'est peut-être pas les bonnes. Pour ma part, j'utilise celles des dossiers de redistribution (déploiement) liés à la version courante de DELPHI que j'utilise.

    a+
    Pascal

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 62
    Points
    62
    Par défaut Les DLL
    Bonjour,

    Pascal :

    C'est fort possible que ça soit la version des DLL qui font ça, je les ai téléchargé à cette adresse : http://indy.fulgan.com/SSL/

  7. #7
    Membre averti
    Avatar de Pascal Fonteneau
    Profil pro
    gérant
    Inscrit en
    Février 2007
    Messages
    139
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : gérant
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2007
    Messages : 139
    Points : 352
    Points
    352
    Par défaut pu..... de DLLs
    Pour delphi XE2 et XE3 , il y a un dossier de redistribution avec les bonnes dll . Pour D7, j'ai fouillé et testé plusieurs versions (en fonction des tailles ) et j'ai fini par trouver.

    libeay32.dll de 692 224 octets
    et
    ssleay32.dll 151 552 octects

    fonctionnent avec D7, c'est d'ailleurs au même endroit que toi que je les ai trouvées.

    Par contre pour D6, je ne sais pas qu'elles sont les bonnes.
    a+

    Pascal

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    183
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 183
    Points : 62
    Points
    62
    Par défaut merci Pascal
    Effectivement ca vient de la

    merci

Discussions similaires

  1. [BCB6]IdSMTP et IdMessage classe d'exeption
    Par Draner dans le forum C++Builder
    Réponses: 1
    Dernier message: 16/07/2008, 12h45
  2. [IdSMTP] et SSL
    Par aityahia dans le forum Delphi
    Réponses: 2
    Dernier message: 18/07/2006, 09h12
  3. [IdSmtp] Type de connexion
    Par aityahia dans le forum Delphi
    Réponses: 5
    Dernier message: 16/07/2006, 22h42
  4. [Indy] IdSMTP exécution en tache de fond
    Par aityahia dans le forum Delphi
    Réponses: 2
    Dernier message: 07/07/2006, 10h20
  5. pb idSMTP et laposte
    Par jmjmjm dans le forum Web & réseau
    Réponses: 3
    Dernier message: 10/05/2006, 10h08

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