Travailler avec le courrier électronique. Envoi d'e-mails par programmation à l'aide de divers services Envoyer un message à la messagerie c

Commandant de navire 14 octobre 2013 à 19:29

Envoi d'e-mails programmé à l'aide de divers services

  • .RAPPORTER,

Très souvent, vous devez faire face à l'envoi e-mailsà partir du code du programme. Vous n'avez pas besoin d'aller loin pour des exemples.

Cet article est un indice et n'ouvre rien de nouveau, mais avant de l'écrire, j'ai regardé quelque chose de similaire sur Internet et j'ai été plutôt surpris que presque partout ils offrent une solution qui ne fonctionne pas ou qui est obsolète, ou qui est simplement écrit de manière illettrée.

La première chose à ne pas faire avec ces exemples est d'utiliser System.Web.Mail, qui a longtemps été déprécié, et en commençant par Visual Studio 2010, vous ne pouvez même pas ajouter la bibliothèque System.Web sans connaître le chemin complet de la DLL correspondante.
Au lieu de cela, il est suggéré d'utiliser la bibliothèque System.Net.
en utilisant System.Net ; en utilisant System.Net.Mail ;
Donc, le plus simple, c'est le plus important et souvent utilisé est d'envoyer une lettre de votre serveur de courrier sur lequel le client SMTP est configuré. Comme vous le comprenez, le serveur peut être soit celui sur lequel tourne l'application, soit un serveur distant, sur lequel vous avez le droit d'envoyer des courriers sans autorisation supplémentaire.

Exemple de code pour envoyer une lettre depuis une machine locale :
", "[email protégé]")) (mm.Subject =" Objet du courrier "; mm.Body =" Corps du courrier "; mm.IsBodyHtml = false; using (SmtpClient sc = new SmtpClient (" 127.0.0.1 ")) (// L'adresse doit être ici serveur de messagerie et port si nécessaire sc.Envoyer (mm );))

À l'aide de services postaux tels que Gmail, Yandex, Mail.ru, etc. tout est pareil, seuls les paramètres avec autorisation sont ajoutés.

Serveur SMTP : smtp.gmail.com
Port : 587
using (MailMessage mm = nouveau MailMessage ("Nom ", "[email protégé]")) (mm.Subject =" Sujet du courrier "; mm.Body =" Corps du courrier "; mm.IsBodyHtml = false; using (SmtpClient sc = new SmtpClient (" smtp.gmail.com ", 587)) (sc. EnableSsl = true ; sc.DeliveryMethod = SmtpDeliveryMethod.Network ; sc.UseDefaultCredentials = false ; sc.Credentials = new NetworkCredential (" [email protégé]"," GmailPassword "); sc.Envoyer (mm );))

Serveur SMTP : smtp.yandex.ru
Port : 25
using (MailMessage mm = nouveau MailMessage ("Nom ", "[email protégé]")) (mm.Subject =" Sujet du courrier "; mm.Body =" Corps du courrier "; mm.IsBodyHtml = false; using (SmtpClient sc = new SmtpClient (" smtp.yandex.ru ", 25)) (sc. EnableSsl = true ; sc.DeliveryMethod = SmtpDeliveryMethod.Network ; sc.UseDefaultCredentials = false ; sc.Credentials = new NetworkCredential (" [email protégé]"," YandexPassword "); sc.Envoyer (mm);))

Serveur SMTP : smtp.mail.ru
Port : 25
using (MailMessage mm = nouveau MailMessage ("Nom ", "[email protégé]")) (mm.Subject =" Sujet du courrier "; mm.Body =" Corps du courrier "; mm.IsBodyHtml = false; using (SmtpClient sc = new SmtpClient (" smtp.mail.ru ", 25)) (sc. EnableSsl = true ; sc.DeliveryMethod = SmtpDeliveryMethod.Network ; sc.UseDefaultCredentials = false ; sc.Credentials = new NetworkCredential (" [email protégé]"," MailRuPassword "); sc.Envoyer (mm);))
Si tu as boites aux lettres sur le service mail.ru se termine par inbox.ru, list.ru ou bk.ru, puis l'adresse du serveur SMTP (smtp.inbox.ru, smtp.list.ru et smtp.bk.ru) change en conséquence.

Comme vous pouvez le voir, pour utiliser tout autre service de messagerie dans vos programmes, il vous suffit de connaître l'adresse et le port du serveur SMTP, ainsi que les règles d'autorisation.

Il ne faut pas oublier non plus que presque tous les tiers services postaux imposer des limites sur le nombre d'e-mails envoyés sur une période de temps.

Tags : e-mail, envoi d'e-mails, smtp

L'une des fonctions les plus demandées sur le site est la demande ou le bon de commande, dont les données sont envoyées par courrier au propriétaire du site. En règle générale, ces formulaires sont simples et se composent de deux ou trois champs pour la saisie des données. Comment créer un tel bon de commande ? Cela nécessitera l'utilisation d'un langage balisage HTML et le langage de programmation PHP.

Le langage de balisage HTML lui-même est simple, il vous suffit de comprendre comment et où mettre certaines balises. Avec le langage de programmation PHP, les choses sont un peu plus compliquées.

Il ne sera pas difficile pour un programmeur de créer un tel formulaire, mais pour un codeur HTML, certaines actions peuvent sembler difficiles.

Créer un formulaire pour soumettre des données en html

La première ligne sera la suivante

C'est un élément très important du formulaire. Nous y indiquons de quelle manière les données seront transférées et vers quel fichier. Dans ce cas, tout est envoyé par la méthode POST vers le fichier send.php. Le programme dans ce fichier, respectivement, doit accepter les données, elles seront contenues dans le tableau post et les envoyer à l'adresse e-mail spécifiée.

Revenons à la forme. La deuxième ligne contiendra un champ pour saisir votre nom complet. A le code suivant :

Le type de formulaire est du texte, c'est-à-dire que l'utilisateur peut saisir ou copier du texte ici à partir du clavier. Le paramètre name contient le nom du formulaire. Dans ce cas, il s'agit de fio, c'est sous ce nom que tout ce que l'utilisateur a saisi dans ce champ sera transmis. Le paramètre placeholder spécifie ce qui sera écrit dans ce champ comme explication.

La ligne suivante :

Ici, presque tout est pareil, mais le nom du champ est email, et l'explication indique que l'utilisateur doit saisir son adresse email dans ce formulaire.

La ligne suivante sera le bouton « soumettre » :

Et la dernière ligne du formulaire sera la balise

Maintenant, rassemblons le tout.





Nous allons maintenant rendre les champs du formulaire obligatoires. Nous avons le code suivant :





Créer un fichier qui accepte les données d'un formulaire HTML

Ce sera un fichier nommé send.php

Dans le fichier, à la première étape, vous devez accepter les données du tableau post. Pour ce faire, nous créons deux variables :

$ fio = $ _POST ["fio"];
$ e-mail = $ _POST ["e-mail"] ;

Les noms de variables PHP sont précédés d'un signe $ et d'un point-virgule à la fin de chaque ligne. $ _POST est un tableau auquel les données du formulaire sont transmises. Dans le formulaire html, la méthode de soumission est spécifiée comme méthode = "post". Ainsi, deux variables sont extraites de formulaires html... Dans le but de protéger votre site, vous devez passer ces variables à travers plusieurs filtres - fonctions php.

La première fonction convertit tous les caractères que l'utilisateur essaie d'ajouter au formulaire :

Dans ce cas, les nouvelles variables en php ne sont pas créées, mais celles existantes sont utilisées. Ce que le filtre fera, c'est convertir le caractère "<" в "<". Также он поступить с другими символами, встречающимися в html коде.

La deuxième fonction décodera l'url si l'utilisateur essaie de l'ajouter au formulaire.

$ fio = urldecode ($ fio);
$ email = urldecode ($ email);

Dans la troisième fonction, nous supprimerons les espaces au début et à la fin de la chaîne, le cas échéant :

$ fio = rogner ($ fio);
$ email = trim ($ email);

Il existe également d'autres fonctions pour filtrer les variables php. Leur utilisation dépend de combien vous craignez qu'un attaquant essaie d'ajouter du code à cette forme d'envoi de données au courrier html.

Validation des données transmises du formulaire HTML au fichier PHP

Afin de vérifier si ce code fonctionne, si les données sont en cours de transfert, vous pouvez simplement l'afficher à l'écran grâce à la fonction echo :

echo $fio;
écho "
";
echo $ e-mail ;

La deuxième ligne sert à diviser la sortie des variables php en différentes lignes.

Envoi des données reçues du formulaire HTML au courrier en utilisant PHP

Pour envoyer des données à la messagerie, vous devez utiliser la fonction de messagerie en PHP.

mail ("à quelle adresse envoyer", "objet de la lettre", "Message (corps du message)", "De : à partir de quelle adresse e-mail la lettre est envoyée\r\n");

Par exemple, vous devez envoyer des données à l'adresse e-mail du propriétaire ou du gestionnaire du site [email protégé]

La ligne d'objet de l'e-mail doit être claire et l'e-mail doit contenir ce que l'utilisateur a spécifié dans le formulaire HTML.

courrier (" [email protégé]"," Application du site "," Nom complet : ". $ Fio.". Courriel : ". $ Courriel," De : [email protégé]\r\n");

Vous devez ajouter une condition qui vérifiera si le formulaire a été soumis en utilisant PHP à l'adresse e-mail spécifiée.

si (courrier (" [email protégé]"," Commande sur le site "," Nom complet : ". $ Fio.". Courriel : ". $ Courriel," De : [email protégé]\r\n"))
{
echo "message envoyé avec succès" ;
) autre (
}

Ainsi, le code du programme du fichier send.php qui enverra les données du formulaire HTML au courrier ressemblera à ceci :

$ fio = $ _POST ["fio"];
$ e-mail = $ _POST ["e-mail"] ;
$ fio = htmlspecialchars ($ fio);
$ email = htmlspecialchars ($ email);
$ fio = urldecode ($ fio);
$ email = urldecode ($ email);
$ fio = rogner ($ fio);
$ email = trim ($ email);
// echo $ fio;
// écho "
";
// echo $ email;
si (courrier (" [email protégé]"," Application du site "," Nom complet : ". $ Fio.". Courriel : ". $ Courriel," De : [email protégé]\r\n"))
(écho "message envoyé avec succès" ;
) autre (
echo "des erreurs se sont produites lors de l'envoi du message" ;
}?>

Trois lignes pour vérifier si les données transmises au fichier sont commentées. Si nécessaire, vous pouvez les supprimer, car ils n'étaient nécessaires que pour le débogage.

Mettre le code de soumission de formulaire HTML et PHP dans un seul fichier

Dans les commentaires de cet article, de nombreuses personnes se posent la question de savoir comment créer à la fois le formulaire HTML et le code PHP pour envoyer des données à la messagerie dans un seul fichier, pas deux.

Pour implémenter un tel travail, vous devez mettre le code HTML du formulaire dans le fichier send.php et ajouter une condition qui vérifiera la présence de variables dans le tableau POST (ce tableau est passé depuis le formulaire). Autrement dit, si les variables du tableau n'existent pas, vous devez alors montrer le formulaire à l'utilisateur. Sinon, vous devez accepter les données de la baie et les envoyer au destinataire.

Voyons comment modifier le code PHP dans le fichier send.php :



Formulaire de demande du site


// vérifie si les variables existent dans le tableau POST
if (! isset ($ _ POST ["fio"]) et! isset ($ _ POST ["email"])) (
?>





) autre (
// afficher le formulaire
$ fio = $ _POST ["fio"];
$ e-mail = $ _POST ["e-mail"] ;
$ fio = htmlspecialchars ($ fio);
$ email = htmlspecialchars ($ email);
$ fio = urldecode ($ fio);
$ email = urldecode ($ email);
$ fio = rogner ($ fio);
$ email = trim ($ email);
si (courrier (" [email protégé]"," Application du site "," Nom complet : ". $ Fio.". Courriel : ". $ Courriel," De : [email protégé]\r\n")) (
echo "Message envoyé avec succès" ;
) autre (
echo "Il y a eu des erreurs lors de l'envoi du message" ;
}
}
?>

Nous vérifions l'existence d'une variable dans le tableau POST à ​​l'aide de la fonction PHP isset(). Un point d'exclamation avant cette fonction dans une condition signifie une négation. Autrement dit, si la variable n'existe pas, nous devons afficher notre formulaire. Si je n'avais pas mis de point d'exclamation, alors la condition signifierait littéralement - "s'il existe, alors montrez le formulaire". Et c'est faux dans notre cas. Naturellement, vous pouvez le renommer en index.php. Si vous renommez le fichier, n'oubliez pas de renommer le nom du fichier et dans la ligne

... Le formulaire doit renvoyer à la même page, par exemple index.php. J'ai ajouté le titre de la page au code.

Erreurs courantes qui se produisent lors de la soumission d'un formulaire PHP à partir d'un site

La première erreur, probablement la plus courante, est lorsque vous voyez une page blanche vierge sans message. Cela signifie que vous avez fait une erreur dans le code de la page. Vous devez activer l'affichage de toutes les erreurs en PHP et vous verrez alors où l'erreur a été commise. Ajoutez à votre code :

ini_set (" display_errors ", " On ");
error_reporting ("E_ALL");

Le fichier send.php ne doit être exécuté que sur le serveur, sinon le code ne fonctionnera tout simplement pas. Il est souhaitable qu'il ne s'agisse pas d'un serveur local, car il n'est pas toujours configuré pour envoyer des données à un serveur de messagerie externe. Si vous exécutez le code sur un côté non serveur, le code PHP sera affiché directement sur la page.

Ainsi, pour un bon fonctionnement, je recommande de placer le fichier send.php sur le site d'hébergement. Là, en règle générale, tout est déjà configuré.

Une autre erreur courante est lorsque la notification "Message envoyé avec succès" apparaît et que la lettre n'arrive pas par la poste. Dans ce cas, vous devez vérifier attentivement la ligne :

si (courrier (" [email protégé]"," Commande sur le site "," Nom complet : ". $ Fio.". Courriel : ". $ Courriel," De : [email protégé]\r\n"))

À la place de [email protégé] il devrait y avoir une adresse e-mail à laquelle vous souhaitez envoyer la lettre, et au lieu de[email protégé] il doit y avoir un email existant de ce site. Par exemple, pour un site, le site sera ... Ce n'est que dans ce cas qu'une lettre avec les données du formulaire sera envoyée.

Dernière mise à jour : 31.10.2015

Pour envoyer du courrier sur Internet, le protocole SMTP (Simple Mail Transfer Protocol) est utilisé. Ce protocole spécifie comment les serveurs de messagerie communiquent lors de la transmission d'e-mails.

La classe SmtpClient de l'espace de noms System.Net.Mail est conçue pour fonctionner avec le protocole SMTP et envoyer des messages électroniques en .NET.

Cette classe définit un certain nombre de propriétés qui vous permettent de personnaliser la soumission :

    Hôte : serveur smtp à partir duquel le courrier est envoyé. Par exemple, smtp.yandex.ru

    Port : port utilisé par le serveur smp. S'il n'est pas spécifié, le port 25 est utilisé par défaut.

    Identifiants : identifiants de l'expéditeur

    EnableSsl : Indique si SSL sera utilisé lors de l'envoi

Une autre classe de clé utilisée lors de l'envoi est MailMessage. Cette classe représente le message envoyé. Parmi ses propriétés figurent les suivantes :

    Pièces jointes : contient toutes les pièces jointes à la lettre

    Corps : directement le texte de la lettre

    De : l'adresse de l'expéditeur. Représente un objet MailAddress

    À : adresse du destinataire. Représente également un objet MailAddress

    Objet : définit l'objet de l'e-mail

    IsBodyHtml : indique si l'e-mail représente du contenu avec du code html

Utilisons ces classes et envoyons la lettre :

Utilisation du système ; en utilisant System.Net ; en utilisant System.IO; en utilisant System.Threading.Tasks ; en utilisant System.Net.Mail ; namespace NetConsoleApp (class Program (static void Main (string args) (// sender - définit l'adresse et le nom affichés dans la lettre MailAddress from = new MailAddress (" [email protégé]"," Tom "); // à qui nous envoyons MailAddress to = new MailAddress (" [email protégé]"); // crée un objet de message MailMessage m = new MailMessage (from, to); // objet du message m.Subject =" Test "; // texte du message m.Body ="

Lettre de test pour client smtp

"; // la lettre représente le code html m.IsBodyHtml = true; // l'adresse du serveur smtp et le port à partir duquel nous enverrons la lettre SmtpClient smtp = new SmtpClient (" smtp.gmail.com ", 587) ; // login et mot de passe smtp.Credentials = new NetworkCredential (" [email protégé]"," mon mot de passe "); smtp.EnableSsl = true; smtp.Envoyer (m); Console.Read (;)))

Pour l'envoi, la méthode Send() est utilisée, à laquelle est passé un objet MailMessage.

On peut aussi utiliser la version asynchrone de l'envoi à l'aide de la méthode SendMailAsync :

Utilisation du système ; en utilisant System.Net ; en utilisant System.IO; en utilisant System.Threading.Tasks ; en utilisant System.Net.Mail ; espace de noms NetConsoleApp (class Program (static void Main (string args) (SendEmailAsync (). GetAwaiter (); Console.Read ();) private static async Task SendEmailAsync () (MailAddress from = new MailAddress (" [email protégé]"," Tom "); MailAddress to = nouvelle MailAddress (" [email protégé]"); MailMessage m = nouveau MailMessage (de, à); m.Subject =" Test "; m.Body =" Test de la lettre 2 de l'opération client smtp "; SmtpClient smtp = nouveau SmtpClient (" smtp.gmail.com " , 587); smtp.Credentials = new NetworkCredential (" [email protégé]"," mypassword "); smtp.EnableSsl = true; wait smtp.SendMailAsync (m); Console.WriteLine (" Mail envoyé ");)))

Ajout de pièces jointes

Nous pouvons joindre des pièces jointes à la lettre en utilisant la propriété Attachments. Chaque pièce jointe représente un objet System.Net.Mail.Attachment :

MailAddress from = new MailAddress (" [email protégé]"," Tom "); MailAddress to = nouvelle MailAddress (" [email protégé]"); MailMessage m = nouveau MailMessage (de, à); m.Attachments.Add (nouvelle pièce jointe (" D: //temlog.txt "));

Envoi de messages au courrier dans Visual Studio 2013 C ++


Il semblerait, pourquoi réinventer la roue ? Il existe de nombreux programmes qui peuvent envoyer des e-mails à e-mail, à la fois gratuits et payants. Dans ces programmes, vous pouvez envoyer des lettres non pas à un, mais à plusieurs destinataires à la fois. Cependant, l'ajout des destinataires se fait manuellement, c'est une tâche fastidieuse de rentrer leurs adresses, surtout s'il y en a plus d'une dizaine. Et si vous deviez envoyer des centaines d'e-mails régulièrement ? Et je ne parle pas de spam, mais de mailings tout à fait légaux ?

Dans ce cas, un programme spécial peut venir à la rescousse. Dans cet article, il n'y aura pas un tel programme complet, mais un petit programme qui envoie simplement une lettre à une seule adresse. Dans ce cas, l'autorisation s'effectue via smpt, c'est-à-dire que la lettre n'est pas envoyée de nulle part, mais à partir d'une boîte aux lettres tout à fait réelle. L'exemple utilise le courrier mail.ru.

Voici donc le texte du programme.

#include "stdafx.h" #en utilisant en utilisant l'espace de noms System; en utilisant l'espace de noms System :: Net; en utilisant l'espace de noms System :: Net :: Mail; en utilisant l'espace de noms System :: Net :: Mime; en utilisant l'espace de noms System :: Threading; en utilisant l'espace de noms System :: ComponentModel; int main () (SmtpClient ^ Smtp = gcnew SmtpClient ("smtp.mail.ru", 25); Smtp-> Credentials = gcnew NetworkCredential ("[email protected]", "votre_mot de passe"); Smtp-> EnableSsl = true ; MailMessage ^ Message = gcnew MailMessage (); Message-> De = gcnew MailAddress ("[email protected]"); Message-> À-> Ajouter (gcnew MailAddress ("[email protected]")); Message- > Subject = "Title"; Message-> Body = "Message"; Smtp-> Send (Message);) Il convient de mentionner tout de suite quelles conditions doivent être remplies: un projet dans Visual Studio 2013 n'est pas créé uniquement pour C + +, il faut quand même être console, supporter l'environnement CLR. Regardons de plus près ce qui se passe et dans quelle ligne de ce programme C++ qui envoie un message à la boîte e-mail sélectionnée.

De la 1ère à la 8ème lignes, les fichiers d'en-tête et les espaces de noms sont connectés. La ligne 13 initialise le serveur smpt. Yandex et Google utilisent les leurs : smtp.yandex.ru et smtp.google.ru, respectivement. Le numéro 25 sur cette ligne est le port. Dans le cas où votre fournisseur bloque ce port ou s'il n'est pas possible de se connecter, alors vous pouvez essayer ces options 465 ou 587. En ligne 14, vous devez saisir votre boîte e-mail (à partir de laquelle la lettre sera envoyée) et le mot de passe de cette boîte.

Portez une attention particulière à la ligne 15 - celle-ci connecte le protocole ssl sécurisé. Ceci est obligatoire pour Yandex et Mail. La ligne 17 crée un message ; à 18 - adresse de retour; à 19 - l'adresse du destinataire; 20 - en-tête de lettre; 21 - message ; à la 22ème ligne, l'envoi est effectué. Si après le démarrage du programme aucune erreur ne s'affiche, rien ne se passe, alors tout va bien - vérifiez la boîte aux lettres du destinataire.

Si vous avez au moins quelques compétences en programmation, terminer le reste sera un jeu d'enfant. Il faut créer une fenêtre, un formulaire, sous forme de plusieurs champs de saisie, obliger le programme à charger une liste d'adresses à partir, par exemple, d'un fichier texte ou d'une base de données MS Access. Si cela n'est toujours pas tout à fait clair pour vous, alors dans les articles suivants, je vous en dirai plus sur tout.

Des questions sur les programmes en C++, java, les scripts en java script et php, la création et la mise en page de site web, vous pouvez les poser par mail [email protégé] ou frappez sur skype up777up2. Pour un prix très raisonnable, je serai heureux de vous aider.

Une addition

Un des visiteurs du blog a posé une question : comment joindre un fichier dans ce programme ? La réponse est simple : vous devez ajouter quelques lignes de code à votre application :

Chaîne ^ att = L "att.xls" ; Pièce jointe ^ dan = gcnew Pièce jointe (att, MediaTypeNames :: Application :: Octet); Message-> Pièces jointes-> Ajouter (dan); Dans la première ligne, nous définissons le fichier joint, dans la seconde, nous définissons les données et l'ordre de ne pas l'interpréter (l'en-tête Content-Type du protocole MIME) et dans la troisième, nous l'ajoutons au message. C'est tout.

Commandant de navire 14 octobre 2013 à 19:29

Envoi d'e-mails programmé à l'aide de divers services

Très souvent, vous devez gérer l'envoi d'e-mails à partir du code du programme. Vous n'avez pas besoin d'aller loin pour des exemples.

Cet article est un indice et n'ouvre rien de nouveau, mais avant de l'écrire, j'ai regardé quelque chose de similaire sur Internet et j'ai été plutôt surpris que presque partout ils offrent une solution qui ne fonctionne pas ou qui est obsolète, ou qui est simplement écrit de manière illettrée.

La première chose que vous ne devriez pas faire dans ces exemples est d'utiliser System.Web.Mail, qui est obsolète depuis longtemps, et depuis Visual Studio 2010, la bibliothèque System.Web n'a même pas été ajoutée sans connaître le chemin complet vers le DLL.
Au lieu de cela, il est suggéré d'utiliser la bibliothèque System.Net.
en utilisant System.Net ; en utilisant System.Net.Mail ;
Donc, le plus simple, c'est le plus important et le plus souvent utilisé, est d'envoyer une lettre depuis votre serveur de messagerie, sur lequel un client SMTP est configuré. Comme vous le comprenez, le serveur peut être soit celui sur lequel tourne l'application, soit un serveur distant, sur lequel vous avez le droit d'envoyer des courriers sans autorisation supplémentaire.

Exemple de code pour envoyer une lettre depuis une machine locale :
", "[email protégé]")) (mm.Subject =" Objet du courrier "; mm.Body =" Corps du courrier "; mm.IsBodyHtml = false; using (SmtpClient sc = new SmtpClient (" 127.0.0.1 ")) (// L'adresse doit être ici serveur de messagerie et port si nécessaire sc.Envoyer (mm );))

Utilisation de services de messagerie tels que Gmail, Yandex, Mail.ru, etc. tout est pareil, seuls les paramètres avec autorisation sont ajoutés.

Serveur SMTP : smtp.gmail.com
Port : 587
using (MailMessage mm = nouveau MailMessage ("Nom ", "[email protégé]")) (mm.Subject =" Sujet du courrier "; mm.Body =" Corps du courrier "; mm.IsBodyHtml = false; using (SmtpClient sc = new SmtpClient (" smtp.gmail.com ", 587)) (sc. EnableSsl = true ; sc.DeliveryMethod = SmtpDeliveryMethod.Network ; sc.UseDefaultCredentials = false ; sc.Credentials = new NetworkCredential (" [email protégé]"," GmailPassword "); sc.Envoyer (mm );))

Serveur SMTP : smtp.yandex.ru
Port : 25
using (MailMessage mm = nouveau MailMessage ("Nom ", "[email protégé]")) (mm.Subject =" Sujet du courrier "; mm.Body =" Corps du courrier "; mm.IsBodyHtml = false; using (SmtpClient sc = new SmtpClient (" smtp.yandex.ru ", 25)) (sc. EnableSsl = true ; sc.DeliveryMethod = SmtpDeliveryMethod.Network ; sc.UseDefaultCredentials = false ; sc.Credentials = new NetworkCredential (" [email protégé]"," YandexPassword "); sc.Envoyer (mm);))

Serveur SMTP : smtp.mail.ru
Port : 25
using (MailMessage mm = nouveau MailMessage ("Nom ", "[email protégé]")) (mm.Subject =" Sujet du courrier "; mm.Body =" Corps du courrier "; mm.IsBodyHtml = false; using (SmtpClient sc = new SmtpClient (" smtp.mail.ru ", 25)) (sc. EnableSsl = true ; sc.DeliveryMethod = SmtpDeliveryMethod.Network ; sc.UseDefaultCredentials = false ; sc.Credentials = new NetworkCredential (" [email protégé]"," MailRuPassword "); sc.Envoyer (mm);))
Si votre boîte aux lettres sur le service mail.ru se termine par inbox.ru, list.ru ou bk.ru, l'adresse du serveur SMTP change en conséquence (smtp.inbox.ru, smtp.list.ru et smtp.bk.ru ).

Comme vous pouvez le voir, pour utiliser tout autre service de messagerie dans vos programmes, il vous suffit de connaître l'adresse et le port du serveur SMTP, ainsi que les règles d'autorisation.

Il ne faut pas oublier non plus que presque tous les services de messagerie tiers imposent des limites au nombre d'e-mails envoyés sur une période donnée.

Tags : e-mail, envoi d'e-mails, smtp