Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

ENVOYER MAIL AVEC SERVEUR SMTP ET CONNEXION AVEC LOGIN OU PAS ET AVEC PIECE JOINTE


Information sur la source

Catégorie :Réseau & Internet Source .NET ( DotNet ) Classé sous : envoi, mail, piece, jointe Niveau : Débutant Date de création : 21/11/2006 Date de mise à jour : 14/08/2007 08:37:22 Vu / téléchargé: 18 658 / 1 475

Note :
8,5 / 10 - par 2 personnes
8,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (29)
Ajouter un commentaire et/ou une note

Description

.net v2 uniquement

Voici un Classe Sympa, qui est tres pratique à utiliser, et voici comment :

'Sans login
traknoMail.Envoi("serveur SMTP", "De@domain.com", "A@domain.com", _
                 "La Classe vb d'envoi mail avec piece jointe", _
                 "Justement, "je l'utilise, là", "C:\traknoMail.vb", "", "", False)
'Avec login
traknoMail.Envoi("serveur SMTP", "De@domain.com", "A@domain.com", _
                 "La Classe vb d'envoi mail avec piece jointe", _
                 "Justement, "je l'utilise, là", "C:\traknoMail.vb", "login", "mot de passe", True)

Mais Surtout, Merci de NE PAS utiliser ceci pour Faire du Spam
 

Source

  • Public Class traknoMail
  • Shared Function Envoi(ByVal server As String, ByVal De As String, ByVal A As String, _
  • ByVal Sujet As String, ByVal Corps As String, ByVal Fichier As String, _
  • ByVal Utilisateur As String, ByVal MotDePasse As String, ByVal avecLogin As Boolean)
  • 'On essaye, tres pratique en vb
  • Try
  • 'Creer un Message par surcharge avec De et A
  • Dim message As Net.Mail.MailMessage = New Net.Mail.MailMessage( _
  • New Net.Mail.MailAddress(De), _
  • New Net.Mail.MailAddress(A))
  • 'Definir Sujet et Corps
  • message.Subject = Sujet
  • message.Body = Corps
  • 'Creer la piece jointe
  • Dim data As Net.Mail.Attachment = New Net.Mail.Attachment(Fichier)
  • 'Ajouter le Time Stamp du fichier
  • Dim disposition As Net.Mime.ContentDisposition = data.ContentDisposition
  • ' 'Date de Création
  • disposition.CreationDate = System.IO.File.GetCreationTime(Fichier)
  • ' 'Date de Dernière Modification
  • disposition.ModificationDate = System.IO.File.GetLastWriteTime(Fichier)
  • ' 'Date de Dernièr Accès
  • disposition.ReadDate = System.IO.File.GetLastAccessTime(Fichier)
  • 'Ajoute la piece jointe au message
  • message.Attachments.Add(data)
  • 'Ouvrir la Connexion vers le serveur SMTP
  • Dim client As Net.Mail.SmtpClient = New Net.Mail.SmtpClient(server)
  • 'Avec Login, soit...
  • If avecLogin = True Then client.Credentials = New System.Net.NetworkCredential(Utilisateur, MotDePasse)
  • 'On Envoie le Message
  • client.Send(message)
  • 'On Retourne Vrai comme résultat de la Fonction
  • Return True
  • 'Oh non !!! , une erreur...
  • Catch ex As Exception
  • 'On Retourne le message d'erreur comme résultat de la Fonction
  • Return ex.Message
  • 'On a Fini d'essayer
  • End Try
  • End Function
  • End Class
Public Class traknoMail
    Shared Function Envoi(ByVal server As String, ByVal De As String, ByVal A As String, _
                          ByVal Sujet As String, ByVal Corps As String, ByVal Fichier As String, _
                          ByVal Utilisateur As String, ByVal MotDePasse As String, ByVal avecLogin As Boolean)
        'On essaye, tres pratique en vb
        Try
            'Creer un Message par surcharge avec De et A
            Dim message As Net.Mail.MailMessage = New Net.Mail.MailMessage( _
                    New Net.Mail.MailAddress(De), _
                    New Net.Mail.MailAddress(A))
            'Definir Sujet et Corps
            message.Subject = Sujet
            message.Body = Corps
            'Creer la piece jointe
            Dim data As Net.Mail.Attachment = New Net.Mail.Attachment(Fichier)
            'Ajouter le Time Stamp du fichier
            Dim disposition As Net.Mime.ContentDisposition = data.ContentDisposition
            '   'Date de Création
            disposition.CreationDate = System.IO.File.GetCreationTime(Fichier)
            '   'Date de Dernière Modification
            disposition.ModificationDate = System.IO.File.GetLastWriteTime(Fichier)
            '   'Date de Dernièr Accès
            disposition.ReadDate = System.IO.File.GetLastAccessTime(Fichier)
            'Ajoute la piece jointe au message
            message.Attachments.Add(data)
            'Ouvrir la Connexion vers le serveur SMTP
            Dim client As Net.Mail.SmtpClient = New Net.Mail.SmtpClient(server)
            'Avec Login, soit... 
            If avecLogin = True Then client.Credentials = New System.Net.NetworkCredential(Utilisateur, MotDePasse)
            'On Envoie le Message
            client.Send(message)
            'On Retourne Vrai comme résultat de la Fonction
            Return True
            'Oh non !!! , une erreur...
        Catch ex As Exception
            'On Retourne le message d'erreur comme résultat de la Fonction
            Return ex.Message
            'On a Fini d'essayer
        End Try
    End Function
End Class

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

14 août 2007 08:37:22 :
Ajout de l'information ".net v2"

Commentaires et avis

signaler à un administrateur
Commentaire de OneHacker le 22/11/2006 17:17:25

IL y a des erreurs dans fichier, déjà c'est pas le NameSpace Net mais qu'il faut utiliser et il faut obligatoirement ajouter la référence à System.Web !

signaler à un administrateur
Commentaire de OneHacker le 22/11/2006 17:22:31

Voici la correction :

Public Class traknoMail
    Shared Function Envoi(ByVal server As String, ByVal De As String, ByVal A As String, ByVal Sujet As String, ByVal Corps As String, ByVal Fichier As String, ByVal Utilisateur As String, ByVal MotDePasse As String, ByVal avecLogin As Boolean)
        'On essaye, tres pratique en vb
        Try
            'Creer un Message par surcharge avec De et A
            Dim message As New Web.Mail.MailMessage
            message.From = De
            message.To = A

            'Definir Sujet et Corps
            message.Subject = Sujet
            message.Body = Corps
            'Creer la piece jointe
            Dim data As Web.Mail.MailAttachment = New Web.Mail.MailAttachment(Fichier)
            'Ajouter le Time Stamp du fichier

            'Ajoute la piece jointe au message
            message.Attachments.Add(data)
            'Ouvrir la Connexion vers le serveur SMTP
            Web.Mail.SmtpMail.SmtpServer = "mail.hotmail.com"
            Web.Mail.SmtpMail.Send(message)
            'On Retourne Vrai comme résultat de la Fonction
            Return True
            'Oh non !!! , une erreur...
        Catch ex As Exception
            'On Retourne le message d'erreur comme résultat de la Fonction
            Return ex.Message
            'On a Fini d'essayer
        End Try
    End Function
End Class

signaler à un administrateur
Commentaire de obinfo le 30/11/2006 11:37:18

Non c'est pas une erreur bien au contraire le namespace web.mail est obsolète en version Net 2.0

Merci beaucoup pour ce source très rare en net 2.0

signaler à un administrateur
Commentaire de OneHacker le 01/12/2006 18:55:03

Ah ok c'est du .NET 2. Croyais que c'était du .Net 1.1 désolé.

signaler à un administrateur
Commentaire de renocmoa le 22/12/2006 19:10:23

Bonsoir, Je voudrais faire un petit soft pour envoyer des mails groupés et personalisé (pas du spam juste contact adhérent assos!)

Si quelqu'un peut m'en dire plus sur comment envoyer et gérer une éventuelle liste d'attente pour éviter embouteillage...

Merci

signaler à un administrateur
Commentaire de OneHacker le 30/12/2006 19:35:46

En VB.Net 1 ?

signaler à un administrateur
Commentaire de renocmoa le 02/01/2007 12:45:48

non en vb.net 2 j'ai trouvé quelque truc mais pas trés simple... si une idée

envoi d'une centaine de mails personalisés
merci

signaler à un administrateur
Commentaire de OneHacker le 04/01/2007 11:44:42

Tu veux dire un MailBomber ? Moi j'en ai fait un pas mal.

signaler à un administrateur
Commentaire de renocmoa le 13/01/2007 12:48:29

le nom de mailbomber ou mailling parle effectivement du même genre de soft seule l'utilisation différe lol ;-)

efféctivement je recherche à faire un soft permetant (via une base access) d'envoyer en une seule opération x mail..

merci

signaler à un administrateur
Commentaire de OneHacker le 16/01/2007 17:30:11

Un xmail via une base acess ? Tu veux dire que chaque champ de la base correspond aux champs et headers du mail ?

signaler à un administrateur
Commentaire de renocmoa le 24/01/2007 20:52:54

non tout simplement une base client dont un champs est le mail et je remplace par exemple <prenom> dans le corps du message par le prenom qui corespond jusque là pas de pb c'est pour l'envoi que je coince comment expédier tout ça en tache de fond sans que ça coince et évidement récupérer l'état des envois...

signaler à un administrateur
Commentaire de OneHacker le 31/01/2007 14:53:34

Ah je vois c'est plutôt quelquechose qui ressemble à du spam que tu veux faire, pas besoin de BDD tu le fais juste avec un fichier texte. Et ton programme doit voir selon le mail mettre le nom à la place de <nom> par ex c'est que du texte qui faut manipuler en fait.

signaler à un administrateur
Commentaire de renocmoa le 03/02/2007 12:59:31

oui tout à fait sauf que les info arrive depuis une bd mais peu importe par contre c'est pas du spam mais de la vrai info je cherche juste àenvoyer un nombre x de mail en une manip... Tu sais faire en vb.net 2?

merci

signaler à un administrateur
Commentaire de OneHacker le 03/02/2007 13:46:55

Non désolé je programme que en VB.Net 2003.

signaler à un administrateur
Commentaire de renocmoa le 17/02/2007 11:47:01

dis moi quand meme je convertirais...

signaler à un administrateur
Commentaire de pinok12 le 02/06/2007 20:40:49

Très bien ce code, par contre, pour passer par certains serveurs SMTP du type GMAIL il faut mettre clien.EnableSSL = true juste après client.Credentials = New System.Net.NetworkCredential(Utilisateur, MotDePasse)

signaler à un administrateur
Commentaire de OneHacker le 02/06/2007 21:14:52

Maintenant je programme en VB.Net 2005 ^^

signaler à un administrateur
Commentaire de thepoe le 14/08/2007 08:27:18

Merci PINOK12 pour l'astuce de gmail.
Encore désolé pour la confusion de VB.net 1.1 et 2. C'est bien du .net v2 edité avec la VB 2005 Express. Si NIX passe par la peut-être germera l'idée de les différencier quand on post une source.
RENOCMOA tu fait une boucle qui utilise cette fonction pour en envoyer plusieur, mais ca ne sera jamais du simultané, juste du schédulé...

signaler à un administrateur
Commentaire de OneHacker le 14/08/2007 18:14:41

Euh ca te dit que je te fasse le prog avec BDD ?

signaler à un administrateur
Commentaire de renocmoa le 24/08/2007 11:37:56

merci à thepoe

schédulé ??

j'ai fait une boucle mais il semblerait qu'il y est un fonctionnement aléatoire et tous les mails ne partent pas...
pb FAI, autre.... une idée?

merci

signaler à un administrateur
Commentaire de OneHacker le 27/08/2007 22:19:56

Alors ?

signaler à un administrateur
Commentaire de renocmoa le 31/08/2007 09:54:39

ben ils ne partent pas tous sans savoir pourquoi?

schédulé c'est quoi ?

signaler à un administrateur
Commentaire de OneHacker le 31/08/2007 23:50:15

Alors renocmoa tu m'a toujours pas répondu pour savoir si je te fait un envoi mail avec BDD.

signaler à un administrateur
Commentaire de renocmoa le 03/09/2007 20:51:43

onehacker, piocher dans ma BDD n'est pas un pb mon seul soucis et de faire un envoi de mail à un nombre variable de déstinataire (de quelque un à environ 200)

J'aimerais une boucle qui envoi le même mail à chaque dest et me donne l'état d'avencement le tout dans un thread séparé

merci

signaler à un administrateur
Commentaire de OneHacker le 03/09/2007 20:53:13

je l'ai fait, moi perso mon MailBomber fait ça et bientot BDD.
Le problème c'est que sur ce site on a pas le droit de poster de MailBomber.

signaler à un administrateur
Commentaire de BLU le 24/10/2007 10:16:32

Bonjour,

le serveur SMTP de ma boite n'est pas configueré avec le port 25 en standard.
J'ai essayer de modifier ton code avec :
            Dim client As Net.Mail.SmtpClient = New Net.Mail.SmtpClient(SMTPServerName)
            client.DeliveryMethod = Net.Mail.SmtpDeliveryMethod.Network
            client.Port = "XXX"

Mais cela ne passe pas
=> le catch me retourne délai d'attente dépassé ...
As tu une idée ?

signaler à un administrateur
Commentaire de thepoe le 24/10/2007 15:13:11

As tu essayé
    Dim client As Net.Mail.SmtpClient = New Net.Mail.SmtpClient(SMTPServerName,XXX)
ou XXX est ton numéro de port plutôt?

Salutations...

signaler à un administrateur
Commentaire de ab52ab le 25/02/2008 09:38:03

L'equivalent de votre code en C# me pose un problème avec la classe Net,
j'aimerais savoir la directive using et la référence assembly à ajouter au projet.
J'ai utilisé les directives "using System.Net.mail" et "System.web.mail" en ajoutant aussi la référence System.web mais ça n'a pas marché.
Merci

signaler à un administrateur
Commentaire de superjc42 le 11/03/2009 09:42:31 10/10

Moi je met 10/10 !

Sa marche nickel !

Je peut remonter les erreurs de mon service "ServeurModBus" directement par mail !

Merci à toi thepoe, et à ceux qui ont posés les commentaires !

JC... ;-)

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

creer 1 mail avec piece jointe dans boite d'envoi [ par marsufred ] Bonjour,J'aimerais créer (ou trouver, car s'il existe c'est encore mieux) un fichier executable qui prend des parametres sur sa ligne de commande et q ENVOI MAIL AVEC PIECE JOINTE [ par ARTHUGERAS ] Bonjour,J'utilise un MAPI SESSION ET MAPIMESSAGE pour envoyer un mail avec pièces jointes.Sur la plupart des micros aù je l'ai installé, cela fonction pb pour l'envoi d'um mail avec piece jointe [ par bensoleil ] Je n'arrive pas à insérer une pièce jointe dans l'envoi d'un mail automatique à partir d'execl en utilisant outlook expressJ'ai essayé :Shell "C:\Pro envoi mail + pièce jointe [ par scoder ] Bonjour, je suis entrain de réaliser une application dans le but d'envoyer régulièrement un même fichier par mail à un même destinataire. J'ai eu beau Email+piece jointe avec Winsocks sous VBA access2002 [ par french_coff ] Bonjour a toute la communauté française des programmeursJ'ai un probleme qui me prend la tete depuis pas mal de temps deja,je suis sous access et je s Envoi fichier excel en piece jointe [ par Jules ] Je veux envoyer un fichier en piece jointe à un destinataire(ou a plusieurs)dans une macro.....Je ne suis pas expert en VB...Merci prob:e-mail avec piece jointe altérée [ par anty ] J'ai un problème de messagerie avec Visual Basic. En effet mon programme VB envoie un e-mail avec une pièce jointe ( au format .txt ) à partir d'outlo piece jointe à un e-mail [ par bratislaprog ] je voudrais savoir s'il est possible d'envoyer des pièces jointes à un e-mail en utilisant winsock. de plus, comment fait-on pour ouvrir un mail qui c Envoi de mail avec plusieurs piece jointe [ par julian ] Bon cé tout simple.J'ai un code ki envoie un mail avec une piéce jointe attachée mais j'aimerai pouvoir en envoyer plusieurs.mon code:Private Sub Send E-mail et piece jointe [ par Wissam ] Salut tt le monde !je suis à la recherche d'un code source ou d'une explication pour l'envoie de mail avec pièce jointe grace au controle Winsock... d


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.