Avr 11

Juste une petite procédure qui me permettra d’envoyer des emails depuis une application écrite avec Delphi si j’en ai éventuellement besoin un jour.

Cette procédure est basée sur les explications et exemples du blog de Marco Cantù.

Je l’ai testée avec succès et j’espère que cela ne changera pas si je m’en sers un jour…

Voici son code :

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
procedure SendEmail(sTo, sSubject, sText: string);
const
  GMAIL_ACCOUNT  = '******@gmail.com'; // Votre compte GMail
  GMAIL_PASSWORD = '******';           // Votre mot de passe GMail
  GMAIL_HOST     = 'smtp.gmail.com';
  GMAIL_PORT     = 587;
var
  crPrevious : TCursor;
  idSSLGMail : TIdSSLIOHandlerSocketOpenSSL;
  idSMTPGMail: TIdSMTP;
  email      : TIdMessage;
begin
  crPrevious                      := Screen.Cursor;
  Screen.Cursor                   := crHourGlass;

  idSSLGMail                      := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
  idSSLGMail.SSLOptions.Method    := sslvTLSv1;
  idSSLGMail.SSLOptions.Mode      := sslmUnassigned;

  idSMTPGMail                     := TIdSMTP.Create(nil);
  idSMTPGMail.IOHandler           := idSSLGMail;
  idSMTPGMail.UseTLS              := utUseExplicitTLS;
  idSMTPGMail.Host                := GMAIL_HOST;
  idSMTPGMail.Port                := GMAIL_PORT;
  idSMTPGMail.UserName            := GMAIL_ACCOUNT;
  idSMTPGMail.Password            := GMAIL_PASSWORD;

  email                           := TIdMessage.Create(nil);
  email.From.Address              := GMAIL_ACCOUNT;
  email.Recipients.EMailAddresses := sTo;
  email.Subject                   := sSubject;
  email.Body.Text                 := sText;

  idSMTPGMail.Connect;
  idSMTPGMail.Send(email);
  idSMTPGMail.Disconnect;

  idSSLGMail.Free;
  idSMTPGMail.Free;
  email.Free;

  Screen.Cursor                   := crPrevious;
end;
Share

Lien permanent vers Envoyer un email en utilisant Delphi et GMail Rédigé par Whiler \\ Tags : , ,

Laisser une réponse

(requis)

(requis)

*

Notifiez-moi les commentaires à venir via email. Vous pouvez aussi vous abonner sans commenter.

;) (lol) (y) |-( (hi) 8-) (angel) :s (clap) (bow) (tmi) (:| plus »

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.