begin process at 2012 02 04 09:23:48
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Réseaux & Internet

 > SMTP

SMTP


 Information sur la source

Note :
7,75 / 10 - par 4 personnes
7,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Réseaux & Internet Source .NET ( DotNet ) Classé sous :smtp, mail Niveau :Initié Date de création :02/06/2002 Date de mise à jour :02/06/2002 16:52:51 Vu :20 373

Auteur : Arnotic

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (16)
Ajouter un commentaire et/ou une note


 Description

Envoyer un e-mail avec C#

Source

  • using System;
  • using System.Web.Mail;
  • namespace EnvoiSMTP
  • {
  • public class Mail
  • {
  • private string To; // Emailaddres for user to send
  • private string From;// Emailaddres for user from
  • private string Sujet;
  • private string Message;
  • private string NomServeur;
  • public Mail()
  • {
  • // Valeur null
  • From = "";
  • To = "";
  • }
  • public string SmtpServeur
  • {
  • set
  • {
  • NomServeur = value;
  • SmtpMail.SmtpServeur = value;
  • }
  • get
  • {
  • return NomServeur;
  • }
  • }
  • public string MailFrom
  • {
  • set
  • {
  • From = value;
  • }
  • get
  • {
  • return From;
  • }
  • }
  • public string MailTo
  • {
  • set
  • {
  • To = value;
  • }
  • get
  • {
  • return To;
  • }
  • }
  • public string MailMessage
  • {
  • set
  • {
  • Message = value;
  • }
  • get
  • {
  • return Message;
  • }
  • }
  • public string MailSujet
  • {
  • set
  • {
  • Sujet = value;
  • }
  • get
  • {
  • return Sujet;
  • }
  • }
  • public bool Envoyer()
  • {
  • try
  • {
  • Console.WriteLine();
  • Console.WriteLine("Connection au serveur : {0}" , NomServeur);
  • // Envoi du mail
  • SmtpMail.Send (From,To,Sujet,
  • Message);
  • return true;
  • }
  • catch (Exception e)
  • {
  • Console.WriteLine("Erreur lors de l'envoi : {0}" , e.Message );
  • return false;
  • }
  • }
  • [STAThread]
  • static void Main(string[] args)
  • {
  • // Entete Main
  • Mail Smtp = new Mail();
  • Console.Write("Serveur SMTP : ");
  • Smtp.SmtpServeur = Console.ReadLine();
  • Console.Write("Votre e-mail : ");
  • Smtp.MailFrom = Console.ReadLine();
  • Console.Write("Mail du destinateur : ");
  • Smtp.MailTo = Console.ReadLine();
  • Console.Write("Subject Mail : ");
  • Smtp.MailSubjet = Console.ReadLine();
  • Console.Write("Message : ");
  • Smtp.MailMessage = Console.ReadLine();
  • if (Smtp.Envoyer())
  • {
  • Console.WriteLine("Fin de session : Ok");
  • }
  • else
  • {
  • Console.WriteLine("Fin de session : Erreur");
  • }
  • Console.WriteLine("Pressez une touche...");
  • Console.Read();
  • }
  • }
  • }
using System;
using System.Web.Mail;

namespace EnvoiSMTP
{
    public class Mail
    {
    	private string To; // Emailaddres for user to send
    	private string From;// Emailaddres for user from 
    	private string Sujet;
    	private string Message;
    	private string NomServeur;
    	
    	public Mail()
    	{
    		// Valeur null
    		From = "";
    		To = "";
    	}
    	
    	public string SmtpServeur
    	{
    		set
    		{
    			NomServeur = value;
    			SmtpMail.SmtpServeur = value;
    		}
    		get
    		{
    			return NomServeur;
    		}
    	}
    	
    	public string MailFrom 
    	{
    		set
    		{
    			From = value;
    		}
    		get
    		{
    			return From;
    		}
    	}
    	
    	public string MailTo
    	{
    		set
    		{
    			To = value;
    		}
    		get
    		{
    			return To;
    		}
    	}
    	
    	public string MailMessage
    	{
    		set
    		{
    			Message = value;
    		}
    		get
    		{
    			return Message;
    		}
    	}
    	
    	public string MailSujet
    	{
    		set
    		{
    			Sujet = value;
    		}
    		get
    		{
    			return Sujet;
    		}
    	}
    	
    	public bool Envoyer()
    	{
    		try
    		{
    			Console.WriteLine();
    			Console.WriteLine("Connection au serveur : {0}" , NomServeur);
    			
    			// Envoi du mail
    			SmtpMail.Send (From,To,Sujet,
    											Message);
    			return true;
    		}
    		catch (Exception e)
    		{
    			Console.WriteLine("Erreur lors de l'envoi : {0}" , e.Message );
    			return false;
    		}
    	}
    
    	[STAThread]
    	static void Main(string[] args)
    	{
    		// Entete Main
    		Mail Smtp = new Mail();
    		
    		Console.Write("Serveur SMTP : ");
    		Smtp.SmtpServeur = Console.ReadLine();
    		
    		Console.Write("Votre e-mail : ");
    		Smtp.MailFrom = Console.ReadLine();
    		
    		Console.Write("Mail du destinateur : ");
    		Smtp.MailTo = Console.ReadLine();
    		
    		Console.Write("Subject Mail : ");
    		Smtp.MailSubjet = Console.ReadLine();
    		
    		Console.Write("Message : ");
    		Smtp.MailMessage = Console.ReadLine();
    		
    		if (Smtp.Envoyer())
    		{
    			Console.WriteLine("Fin de session : Ok");
    		}
    		else
    		{
    			Console.WriteLine("Fin de session : Erreur");
    		}
    		
    	Console.WriteLine("Pressez une touche...");
    	Console.Read();
    	}	
    }
}

 Conclusion

Amusez-vous bien ;-)


 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) GETSYSTEMTIME ET SETSYSTEMTIME
Source .NET (Dotnet) LISTE DES LECTEURS SUR VOTRE PC
Source .NET (Dotnet) LISTER UN RÉPERTOIRE
Source .NET (Dotnet) LISTER LES REPERTOIRES D'UN LECTEUR
Source .NET (Dotnet) DÉCOUPER UNE CHAÎNE

 Sources de la même categorie

Source avec Zip Source avec une capture MODIFIER ADRESSE MAC (WINDOWS) par maxou561
Source avec Zip Source avec une capture FTPROG - CLIENT FTP TRÈS BASIQUE par Jukuso
Source avec Zip Source .NET (Dotnet) WIFIKEYVIEWER : LISTE DES PROFILES WIFI AVEC LEURS CLÉS/MOTS... par ShareVB
Source avec Zip Source .NET (Dotnet) TRANSFERT DE FICHIER par VinceMonkeyz
Source avec Zip Source .NET (Dotnet) NET (SCAN D'URL) par VinceMonkeyz

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) ENVOYER UN EMAIL MULTIDESTINATAIRE EN SMTP AVEC ACCUSÉ DE LE... par Nikachu
Source avec Zip Source avec une capture Source .NET (Dotnet) SEND MAIL WITH GMAIL par ayache78500
Source avec Zip Source avec une capture Source .NET (Dotnet) CRÉATION ET ENVOI DE FICHIERS ZIPPÉS par yoannd
Source avec Zip Source .NET (Dotnet) RECUPERATION DES INFOS DES TASKS SCHEDULED par bigmonkey7
Source avec Zip Source .NET (Dotnet) ENVOI DE MESSAGES PAR RÉSEAU par zatt

Commentaires et avis

Commentaire de Virtua747 le 17/06/2002 18:49:55

Quand je compile il me dans " System.Web.Mail " que Web n'existe pas.

Commentaire de pornik le 18/06/2002 22:00:10

T'as pas oublié de lier System.Web.dll au projet ;) ?

Commentaire de boule le 10/11/2002 12:18:59

Sa fonctionne en mode console j'ai insere cette classe dans mon projet je l'appelle a partir d'un formulaire et j'obtient : Impossible d'acceder à l'objet 'CDO.message'. Le pb c'est que je ne sais pas a quoi sa correspond.

Commentaire de celene le 15/01/2003 18:33:20

Cette classe ne compile pas, il y a deux erreurs de frappe :
Smtp.MailSubjet  et SmtpMail.SmtpServeur.
HALLUCINANT !!!

Voici une classe qui fonctionne:
using System;
using System.Web.Mail;

public class Mail{
  private string pour;
  private string de;
  private string sujet;
  private string message;
  private string serveurMail;

  public Mail(string pour, string de, string sujet, string message, string serveurMail){
    this.pour=pour;
    this.de=de;
    this.sujet=sujet;
    this.message=message;
    this.serveurMail=serveurMail;
  }

  public void envoyer(){
    try{
      Console.WriteLine();
      Console.WriteLine("Connection au serveur : {0}" , serveurMail);
      SmtpMail.SmtpServer = serveurMail;
      SmtpMail.Send(de,pour,sujet,message);
      Console.WriteLine("Message envoye");
    }
    catch (Exception e){
      Console.WriteLine("Erreur lors de l'envoi : {0}" , e.Message );
      Console.WriteLine("Fin de session : Erreur");
    }
    Console.WriteLine("Pressez une touche...");
    Console.Read();
  }

  static void Main(string[] args){
    Console.Write("Serveur SMTP : ");
    String serveurMail = Console.ReadLine();
    Console.Write("Votre e-mail : ");
    String de = Console.ReadLine();
    Console.Write("Mail du destinateur : ");
    String pour = Console.ReadLine();
    Console.Write("Subject Mail : ");
    String sujet = Console.ReadLine();
    Console.Write("Message : ");
    String message = Console.ReadLine();
    Mail mail=new Mail(pour, de, sujet, message, serveurMail);
    mail.envoyer();
  }
}

Commentaire de JCpp le 29/04/2003 19:59:58

Idem
Impossible d'acceder à l'objet 'CDO.message'. Le pb c'est que je ne sais pas a quoi sa correspond ?

Commentaire de Dalcyon le 29/10/2003 21:54:13

Le serveur smtp spécifié en ligne de commande ne doit pas être bon

Commentaire de ledocdoc le 29/08/2004 18:24:42

J'ai le meme probleme... alors que le serveur smtp est bon... alors... si tu as trouvé ou etait le pb... merci de m'aider... tcho...
merci d'avance;)

Commentaire de marloon le 10/09/2004 01:02:30

Je viends de tester sur mon IIS,
ca vient bien du fait qu'il faut que le serveur smtp fasse du relay.
Chose rare de nos jours.

A+,

M.

Commentaire de lolhangman le 12/04/2005 15:49:49

salut, quelqu'un peut m'expliquer pourquoi outlook peut se connecter au server smtp sans probleme alors que mon programme ne le peut pas (si ce n'est pas en relay?) ???

Commentaire de Dalcyon le 13/04/2005 10:10:36

Le serveur smtp demande-t-il une authentification ?

Sur quel serveur SMTP te connectes tu ?

Commentaire de marloon le 13/04/2005 11:34:49

Salut !
Pour tester montes toi vite fait un serveur SMTP qui relay et essayes, au moins tu seras fixé.

A+,

M.

Commentaire de lolhangman le 14/04/2005 17:20:56

En ce qui me concerne je n'arrivait pas a me connecter meme en authentifié, j'ai finalement trouvé ca venait de l'entivirus qui bloquait le port 25 (mail)  

Commentaire de marloon le 14/04/2005 17:44:32

Ah bon ?
Ok, tant mieux.
Et ton outlook qui fonctionnait, il se l'ouvrait tout seul le port 25 ?   :)

A+,

M.

Commentaire de Dalcyon le 14/04/2005 18:20:41

Je dirai qu'outlook était une application autorisée par le firewall accéder au port 25 d'une autre bécanne ;)

Commentaire de scoubidou944 le 15/01/2006 02:44:31

pour le message CDO.Message truc j'ai eu le même, voici les lignes à vérifier :
- serveur smtp
- pièce jointe (le chemin doit etre complet sans le file://
(en gros on n'utilise pas ce code (coming from Krosoft) directement
string path = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase );
)
- sinon au pire on test avec le minimum de param et on voit si ca marche et on rajoute petit à petit

Commentaire de scalpto le 04/01/2008 15:15:21

Salut
Sais tu comment ajouter a ce code la partie authentification pour les serveurs smtp qui le demandent?
Merci

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Webmail erreur acces CDO.message 0x80040217 [ par Armis ] Salut,J'ai un problème avec ma connexion à mon serveur SMTP je crois...Voici mon code pour envoyer un mail à partir d'une WinApp en C#:MailMessage con [Debutant] Classes [ par shadow1779 ] Bonsoir,j'ai décidé de me mettre au C# etant donné que cela est fiable et assez proche du VB.NET , langage avec lequel je commence a etre assez initié Erreur :Le serveur SMTP a retourné une réponse non valide. [ par sharu_a99 ] salut Dans mon application j'ai un boutton qui doit transmettre des email a des personnes bien determiner , mais dé que je l'utilise l'erreur suivante Pb smtp lors d'envoi de mail [ par jagxx ] Bonjour à tous,Je suis entrain de développer une app qui envoie un mail a l'admin quand le temps d'un ping dépasse une certaine valeur un certain nomb Impossible d'envoyer un mail avec System.Net.Mail; [ par calisca ] Bonjour à tous, Tout d'abord merci pour votre site très complet, c'est vraiment pratique !!! Mon problème est le suivant : je dois réaliser un proje mail et csharp (smtp) [ par maxime1989 ] Annuler l'envoi d'un mail en cours [ par F2ATA ] Bonsoir,j'ai développé une application avec laquelle j'envoie des mails. dont voici un bout de code que présente comment je je fais :using System;usin Connaitre client email par defaut [ par wald39 ] Bonjour à tous,Je voulais savoir comment connaitre le programme client pour les emails par défaut.En faite dans mon appli je voudrais un bouton qui ou C# - formulaire web [ par angrodmadje ] Bonjour,Je cherche un code qui me permettrais d'ouvrir le navigateur web, se connecter à une adresse et envoyer (en POST) les paramètres date et mail Envoie de rendez-vous dans Outlook [ par Stephnie ] Bonjour, Je dois développer un module permettant de créer un rendez-vous dans Outlook à partir d'une application en C#/ASP.NET.L'utilisateur créer son


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,811 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales