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 UN EMAIL EN CODE SANS OUTLOOK, SANS MAPI, SANS SOCKET, ET FACILEMENT


Information sur la source

Catégorie :Réseau & Internet Niveau : Débutant Date de création : 13/09/2002 Date de mise à jour : 04/06/2004 09:12:10 Vu : 14 731

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

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

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

Description

Il faut ajouter les 2 références suivantes :
Microsoft ADO 2.5 minimum
Microsoft CDO pour Windows 2000 ou Microsoft CDO pour Exchange 2000
CDO non disponible sous Windows 9x

Créez un nouveau projet, ajoutez un bouton sur le formulaire, remplacer les parametres et coller le code ci dessous


Notez bien que le choix du serveur SMTP est fortement conditionné par votre connexion internet. Le serveur SMTP de Freesurf par exemple n'accepte pas d'envoyer des Mails si vous n'etes pas connecté actuellement chez eux, sauf si vous envoyer un mail pour un utilisateur freesurf.
 

Source

  • '---------------------------
  • Private Sub Command1_Click()
  • Dim iMsg As New CDO.Message
  • Dim iConf As New CDO.Configuration
  • Dim Flds As ADODB.Fields
  • Set Flds = iConf.Fields
  • With Flds
  • .Item(cdoSendUsingMethod) = cdoSendUsingPort
  • .Item(cdoSMTPServer) = "un serveur SMTP" ' Si vous utilisez la librairie CDO pour exchange
  • '.Item(cdoSMTPServerName) = "un serveur SMTP" ' Si vous utilisez la librairie CDO pour Windows 2000
  • .Item(cdoSMTPConnectionTimeout) = 10
  • .Item(cdoSMTPAuthenticate) = cdoBasic
  • .Item(cdoSendUserName) = "Le nom du compte de la messagerie"
  • .Item(cdoSendPassword) = "Votre mot de passe"
  • .Item(cdoURLProxyServer) = "server:80"
  • .Item(cdoURLProxyBypass) = "<local>"
  • .Item(cdoURLGetLatestVersion) = True
  • .Update
  • End With
  • With iMsg
  • Set .Configuration = iConf
  • .To = """Nom quelconque"" <Adresse email>"
  • .From = """Nom quelconque"" <adresse email>"
  • .Subject = "Ca marche !"
  • .TextBody = "sans probleme"
  • '.AddAttachment "C:\un fichier quelconque"
  • .Send
  • End With
  • End Sub
  • '-----------------------------------------------
'---------------------------

 Private Sub Command1_Click()
 Dim iMsg As New CDO.Message
 Dim iConf As New CDO.Configuration   
 
 Dim Flds As ADODB.Fields
 Set Flds = iConf.Fields
 
 With Flds
   .Item(cdoSendUsingMethod) = cdoSendUsingPort
   .Item(cdoSMTPServer) = "un serveur SMTP" ' Si vous utilisez la librairie CDO pour exchange
   '.Item(cdoSMTPServerName) = "un serveur SMTP"	' Si vous utilisez la librairie CDO pour Windows 2000
   .Item(cdoSMTPConnectionTimeout) = 10
   .Item(cdoSMTPAuthenticate) = cdoBasic
   .Item(cdoSendUserName) = "Le nom du compte de la messagerie"
   .Item(cdoSendPassword) = "Votre mot de passe"
   .Item(cdoURLProxyServer) = "server:80"
   .Item(cdoURLProxyBypass) = "<local>"
   .Item(cdoURLGetLatestVersion) = True
   .Update
 End With 



 With iMsg
   Set .Configuration = iConf
       .To = """Nom quelconque"" <Adresse email>"
       .From = """Nom quelconque"" <adresse email>"
       .Subject = "Ca marche !"
       .TextBody = "sans probleme"
       '.AddAttachment "C:\un fichier quelconque"
       .Send
 End With

 End Sub

'-----------------------------------------------
 

Commentaires et avis

signaler à un administrateur
Commentaire de Patrice99 le 13/09/2002 15:32:44

CDO n'est pas disponible sous Win9x, ce n'est dispo que sous NT et XP

signaler à un administrateur
Commentaire de matrey le 13/09/2002 19:38:35

Pas mal, mais bon mon système, par son principe, est encore le plus simple :
http://www.vbfrance.com/article.aspx?Val=4650
et pensez à changer les paramètres avant de tester !!!!

signaler à un administrateur
Commentaire de SuperClic le 14/09/2002 10:18:32

J' ai utilisé le même système avec CDO, mais de manière beaucoups plus simple:
http://www.vbfrance.com/article.aspx?Val=5578

En effet, je voit pas l' interet de toucher à la configuration

signaler à un administrateur
Commentaire de 01expert le 18/11/2002 10:11:05

Avez vous une version pour Win 98 ?

signaler à un administrateur
Commentaire de Tito le 18/11/2002 20:53:29

Voir le premier commentaire pour la question ci dessus

signaler à un administrateur
Commentaire de slayer le 06/01/2003 03:53:11

possible d'avoir un zip svp ...

signaler à un administrateur
Commentaire de faucheux le 09/03/2003 20:27:20

J'ai essayé. Ca marche très bien avec un message en simple texte. Je souhaiterais expédier ave VB un Email en format HTML. J'ai essayé d'envoyer le contenu d'un fichier HTML, mais ça ne marche pas (Je récupère le texte HTML que j'envoi, mais pas un Email en format HTML). Merci pour votre aide.

signaler à un administrateur
Commentaire de Tito le 09/03/2003 21:51:55

Pour envoyer le mail au format HTML, il ne faut pas mettre le code HTML dans la propriété TextBody. Pour cela, il faut utiliser la propriété HTMLBody. De cette manière, on peut envoyer un message à la fois en texte et en HTML.
Pour exemple, remplacer la ligne :
.TextBody = "sans probleme"
par celle ci :
.HTMLBody = "&lt;p class=MsoNormal align=center style='text-align:center'&gt;&lt;font size=6 color=red face=Arial&gt;&lt;span style='font-size:26.0pt;font-family:Arial; color: red '&gt;sans probleme&nbsp;!&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;"

signaler à un administrateur
Commentaire de faucheux le 11/03/2003 00:03:10

Le message de Tito répond tout à fait à mon problème. Un très grand Merci.
Je recherche maintenant la solution pour insérer des images provenant de fichiers locaux. Avec des images sur Internet insérées dans le HTLM ca marche très bien. Mais je n'arrive pas à insérer des images locales comme le fait Outlook express par exemple. Auriez vous encore une idée lumineuse sur la question? Je suis prêt à me reconnaître de votre aide qui m'est très utile: 01.30.30.60.70.

signaler à un administrateur
Commentaire de Tito le 11/03/2003 19:43:03

Pour envoyer un mail au format HTML avec des références telles que des images, il faut utiliser la methode "AddRelatedBodyPart". C'est une sorte de collection d'objet que l'on référence et qui est disponible dans le code HTML du mail.

Exemple :

.HTMLBody = "&lt;IMG src=""LOGO""&gt;"
.AddRelatedBodyPart "C:Image.jpg", "LOGO", cdoRefTypeLocation

signaler à un administrateur
Commentaire de faucheux le 12/03/2003 01:22:10

Ca fonctionne super !!!  Avec ces éléments je vais pouvoir amélioer un petit logiciel utilisé sous tous les Windows. Je ne pense qu'il n'y aura pas des problèmes (jai déjà essayé une installation sous 98 et ça marche).
Ca me ferait très plaisir que vous m'appeliez au 01.30.30.60.70 pour:
1) vous remercier de vive voix
2) vous exposer rapidement mon application qui pourra peut-être vous intéresser.

signaler à un administrateur
Commentaire de faucheux le 18/04/2003 18:46:25

Un problème: les messages non délivrables ne sont pas retournés.
Si l'adresse est mauvaise, le message part dans la nature et je ne suis pas informé qu'il n'a pas abouti.   J'ai pourtant renseigné:
.Item(cdoSMTPServer) = "smtp.wanadoo.fr" ' (je ne sais pas si c'est bon et ça a l'air de ne servir à rien, et
.From = """Mon Nom"" &lt;Mon adresse email&gt;" qui parait bien pris en compte
Je ne vois pas ce qu'il faut indiquer de plus pour que les retours me reviennent. Merci pour votre aide.

signaler à un administrateur
Commentaire de jujufa le 15/07/2003 18:29:37

Salut, j'aime bien ce code mais je n'arrive pas à envoyer d'e-mail avec un compte notes different de celui qui est connecté au PC

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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,811 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é.