Envoi de mails par VB6 à une liste de destinataires
7 réponses
pierre.rivet
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple
relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post intéressant
sur le site VBFrance.com
mais je cherche (désespérément pour l'instant) à étendre cette procédure.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
pierre.rivet
J'ai oublié de dire que je souhaiterais envoyer ces mails avec Outlook express, qui est l'application de messagerie la plus répandue.
"pierre.rivet" a écrit dans le message de news: 4491168b$0$879$
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post intéressant sur le site VBFrance.com mais je cherche (désespérément pour l'instant) à étendre cette procédure.
Quelqu'un a-t-il une idée ?
Merci d'avance,
Pierre
J'ai oublié de dire que je souhaiterais envoyer ces mails avec Outlook
express, qui est l'application de messagerie la plus répandue.
"pierre.rivet" <pierre.rivet@wanadoo.fr> a écrit dans le message de news:
4491168b$0$879$ba4acef3@news.orange.fr...
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple
relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post
intéressant sur le site VBFrance.com
mais je cherche (désespérément pour l'instant) à étendre cette procédure.
J'ai oublié de dire que je souhaiterais envoyer ces mails avec Outlook express, qui est l'application de messagerie la plus répandue.
"pierre.rivet" a écrit dans le message de news: 4491168b$0$879$
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post intéressant sur le site VBFrance.com mais je cherche (désespérément pour l'instant) à étendre cette procédure.
Quelqu'un a-t-il une idée ?
Merci d'avance,
Pierre
X
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Dim Mail As String ' Mail = ?subject=titre_du_courrier
-- Site logiciels http://irolog.free.fr Mail http://irolog.free.fr/ecrire/index.htm Site perso http://irolog.free.fr/joe/index.htm Principe d'utilisation des news Groups http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm ------------------------------------------------------------------------------------ "pierre.rivet" a écrit dans le message de news: 4491168b$0$879$
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post intéressant sur le site VBFrance.com mais je cherche (désespérément pour l'instant) à étendre cette procédure.
Quelqu'un a-t-il une idée ?
Merci d'avance,
Pierre
Private Declare Function ShellExecute Lib "shell32.dll" Alias
"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal
lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String,
ByVal nShowCmd As Long) As Long
Dim Mail As String
'
Mail = montmartre@noos.fr?subject=titre_du_courrier
--
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"pierre.rivet" <pierre.rivet@wanadoo.fr> a écrit dans le message de news:
4491168b$0$879$ba4acef3@news.orange.fr...
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple
relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post
intéressant sur le site VBFrance.com
mais je cherche (désespérément pour l'instant) à étendre cette procédure.
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Dim Mail As String ' Mail = ?subject=titre_du_courrier
-- Site logiciels http://irolog.free.fr Mail http://irolog.free.fr/ecrire/index.htm Site perso http://irolog.free.fr/joe/index.htm Principe d'utilisation des news Groups http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm ------------------------------------------------------------------------------------ "pierre.rivet" a écrit dans le message de news: 4491168b$0$879$
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post intéressant sur le site VBFrance.com mais je cherche (désespérément pour l'instant) à étendre cette procédure.
Quelqu'un a-t-il une idée ?
Merci d'avance,
Pierre
Fred
Dans : news:44911701$0$896$, pierre.rivet disait :
J'ai oublié de dire que je souhaiterais envoyer ces mails avec Outlook express, qui est l'application de messagerie la plus répandue.
Bonjour, un mail est un mail. Qu'il soit envoyé avec OE ou autre. Maintenant, si le problème est de conserver les mails envoyés dans OE, ce n'est pas possible car OE n'est pas scriptable. Au pire tu peux t'envoyer le fameux mail et tu en auras une copie dans OE.
Si tu souhaites faire l'envoi de manière transparente, comme je le suppose, je vois deux solutions : La première est de gérer soit même avec Winsock le protocole SMTP : pas simple. La deuxième est d'utiliser le composant CDO mais il faut : soit être sous 2000 et supérieurs, soit avec Outlook installé.
Il y a un excellent exemple ici : http://faqoe.com/index.php?bas=/rep/cs.php3 C'est du vbs mais cela s'utilise tel quel en VB6, en ajoutant éventuellement (je n'en suis pas sûr) une référence à l'objet Microsoft CDO dans le projet.
-- Fred http://www.cerbermail.com/?3kA6ftaCvT
Dans : news:44911701$0$896$ba4acef3@news.orange.fr,
pierre.rivet disait :
J'ai oublié de dire que je souhaiterais envoyer ces mails avec Outlook
express, qui est l'application de messagerie la plus répandue.
Bonjour,
un mail est un mail. Qu'il soit envoyé avec OE ou autre.
Maintenant, si le problème est de conserver les mails envoyés dans OE,
ce n'est pas possible car OE n'est pas scriptable.
Au pire tu peux t'envoyer le fameux mail et tu en auras une copie dans
OE.
Si tu souhaites faire l'envoi de manière transparente, comme je le
suppose, je vois deux solutions :
La première est de gérer soit même avec Winsock le protocole SMTP : pas
simple.
La deuxième est d'utiliser le composant CDO mais il faut : soit être
sous 2000 et supérieurs, soit avec Outlook installé.
Il y a un excellent exemple ici :
http://faqoe.com/index.php?bas=/rep/cs.php3
C'est du vbs mais cela s'utilise tel quel en VB6, en ajoutant
éventuellement (je n'en suis pas sûr) une référence à l'objet Microsoft
CDO dans le projet.
Dans : news:44911701$0$896$, pierre.rivet disait :
J'ai oublié de dire que je souhaiterais envoyer ces mails avec Outlook express, qui est l'application de messagerie la plus répandue.
Bonjour, un mail est un mail. Qu'il soit envoyé avec OE ou autre. Maintenant, si le problème est de conserver les mails envoyés dans OE, ce n'est pas possible car OE n'est pas scriptable. Au pire tu peux t'envoyer le fameux mail et tu en auras une copie dans OE.
Si tu souhaites faire l'envoi de manière transparente, comme je le suppose, je vois deux solutions : La première est de gérer soit même avec Winsock le protocole SMTP : pas simple. La deuxième est d'utiliser le composant CDO mais il faut : soit être sous 2000 et supérieurs, soit avec Outlook installé.
Il y a un excellent exemple ici : http://faqoe.com/index.php?bas=/rep/cs.php3 C'est du vbs mais cela s'utilise tel quel en VB6, en ajoutant éventuellement (je n'en suis pas sûr) une référence à l'objet Microsoft CDO dans le projet.
-- Fred http://www.cerbermail.com/?3kA6ftaCvT
pierre.rivet
Merci à Fred,
Pardon de ne pas avoir remercié plus tôt, mais je viens seulement de lire ta réponse. J'ai appliqué l'exemple. Il marche de façon impeccable. J'ai effectivement rajouté une référence à l'objet Microsoft CDO. J'ai testé un envoi à plusieurs destinataires ; ça fonctionne également, mais chaque destinataire reçoit un mail avec la liste des destinataires. Ce que je voudrais c'est que chacun reçoive un mail en ayant l'impression qu'il est adressé à lui seul. Il faut maintenant travailler un peu en essayant d'intercaler la procédure d'envoi dans une boucle de ce style do until Patient.eof ENVOI DE MAIL Patient.movenext loop
Jusque maintenant c'est là dessus que je bute.....
Merci encore
"Fred" a écrit dans le message de news:
Dans : news:44911701$0$896$, pierre.rivet disait :
J'ai oublié de dire que je souhaiterais envoyer ces mails avec Outlook express, qui est l'application de messagerie la plus répandue.
Bonjour, un mail est un mail. Qu'il soit envoyé avec OE ou autre. Maintenant, si le problème est de conserver les mails envoyés dans OE, ce n'est pas possible car OE n'est pas scriptable. Au pire tu peux t'envoyer le fameux mail et tu en auras une copie dans OE.
Si tu souhaites faire l'envoi de manière transparente, comme je le suppose, je vois deux solutions : La première est de gérer soit même avec Winsock le protocole SMTP : pas simple. La deuxième est d'utiliser le composant CDO mais il faut : soit être sous 2000 et supérieurs, soit avec Outlook installé.
Il y a un excellent exemple ici : http://faqoe.com/index.php?bas=/rep/cs.php3 C'est du vbs mais cela s'utilise tel quel en VB6, en ajoutant éventuellement (je n'en suis pas sûr) une référence à l'objet Microsoft CDO dans le projet.
-- Fred http://www.cerbermail.com/?3kA6ftaCvT
Merci à Fred,
Pardon de ne pas avoir remercié plus tôt, mais je viens seulement de lire ta
réponse.
J'ai appliqué l'exemple. Il marche de façon impeccable.
J'ai effectivement rajouté une référence à l'objet Microsoft CDO.
J'ai testé un envoi à plusieurs destinataires ; ça fonctionne également,
mais chaque destinataire reçoit un mail avec la liste des destinataires. Ce
que je voudrais c'est que chacun reçoive un mail en ayant l'impression qu'il
est adressé à lui seul.
Il faut maintenant travailler un peu en essayant d'intercaler la procédure
d'envoi dans une boucle de ce style
do until Patient.eof
ENVOI DE MAIL
Patient.movenext
loop
Jusque maintenant c'est là dessus que je bute.....
Merci encore
"Fred" <foleide@libre.france> a écrit dans le message de news:
O4ROQ3JkGHA.4304@TK2MSFTNGP03.phx.gbl...
Dans : news:44911701$0$896$ba4acef3@news.orange.fr,
pierre.rivet disait :
J'ai oublié de dire que je souhaiterais envoyer ces mails avec Outlook
express, qui est l'application de messagerie la plus répandue.
Bonjour,
un mail est un mail. Qu'il soit envoyé avec OE ou autre.
Maintenant, si le problème est de conserver les mails envoyés dans OE, ce
n'est pas possible car OE n'est pas scriptable.
Au pire tu peux t'envoyer le fameux mail et tu en auras une copie dans OE.
Si tu souhaites faire l'envoi de manière transparente, comme je le
suppose, je vois deux solutions :
La première est de gérer soit même avec Winsock le protocole SMTP : pas
simple.
La deuxième est d'utiliser le composant CDO mais il faut : soit être sous
2000 et supérieurs, soit avec Outlook installé.
Il y a un excellent exemple ici :
http://faqoe.com/index.php?bas=/rep/cs.php3
C'est du vbs mais cela s'utilise tel quel en VB6, en ajoutant
éventuellement (je n'en suis pas sûr) une référence à l'objet Microsoft
CDO dans le projet.
Pardon de ne pas avoir remercié plus tôt, mais je viens seulement de lire ta réponse. J'ai appliqué l'exemple. Il marche de façon impeccable. J'ai effectivement rajouté une référence à l'objet Microsoft CDO. J'ai testé un envoi à plusieurs destinataires ; ça fonctionne également, mais chaque destinataire reçoit un mail avec la liste des destinataires. Ce que je voudrais c'est que chacun reçoive un mail en ayant l'impression qu'il est adressé à lui seul. Il faut maintenant travailler un peu en essayant d'intercaler la procédure d'envoi dans une boucle de ce style do until Patient.eof ENVOI DE MAIL Patient.movenext loop
Jusque maintenant c'est là dessus que je bute.....
Merci encore
"Fred" a écrit dans le message de news:
Dans : news:44911701$0$896$, pierre.rivet disait :
J'ai oublié de dire que je souhaiterais envoyer ces mails avec Outlook express, qui est l'application de messagerie la plus répandue.
Bonjour, un mail est un mail. Qu'il soit envoyé avec OE ou autre. Maintenant, si le problème est de conserver les mails envoyés dans OE, ce n'est pas possible car OE n'est pas scriptable. Au pire tu peux t'envoyer le fameux mail et tu en auras une copie dans OE.
Si tu souhaites faire l'envoi de manière transparente, comme je le suppose, je vois deux solutions : La première est de gérer soit même avec Winsock le protocole SMTP : pas simple. La deuxième est d'utiliser le composant CDO mais il faut : soit être sous 2000 et supérieurs, soit avec Outlook installé.
Il y a un excellent exemple ici : http://faqoe.com/index.php?bas=/rep/cs.php3 C'est du vbs mais cela s'utilise tel quel en VB6, en ajoutant éventuellement (je n'en suis pas sûr) une référence à l'objet Microsoft CDO dans le projet.
-- Fred http://www.cerbermail.com/?3kA6ftaCvT
pierre.rivet
Merci à Joe de ta réponse,
J'ai testé les lignes de code.
ça fonctionne, mais je dois confirmer l'envoi du envoyer le mail à chaque fois En outre, je ne parviens pas à paramétrer un titre ou un texte.... Je vais continuer à travailler la méthode préconisée par Fred.
Merci encore,
Pierre
"X" a écrit dans le message de news:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Dim Mail As String ' Mail = ?subject=titre_du_courrier
-- Site logiciels http://irolog.free.fr Mail http://irolog.free.fr/ecrire/index.htm Site perso http://irolog.free.fr/joe/index.htm Principe d'utilisation des news Groups http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm ------------------------------------------------------------------------------------ "pierre.rivet" a écrit dans le message de news: 4491168b$0$879$
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post intéressant sur le site VBFrance.com mais je cherche (désespérément pour l'instant) à étendre cette procédure.
Quelqu'un a-t-il une idée ?
Merci d'avance,
Pierre
Merci à Joe de ta réponse,
J'ai testé les lignes de code.
ça fonctionne, mais je dois confirmer l'envoi du envoyer le mail à chaque
fois
En outre, je ne parviens pas à paramétrer un titre ou un texte....
Je vais continuer à travailler la méthode préconisée par Fred.
Merci encore,
Pierre
"X" <X@Y.Z> a écrit dans le message de news:
u0qqfqIkGHA.3588@TK2MSFTNGP02.phx.gbl...
Private Declare Function ShellExecute Lib "shell32.dll" Alias
"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal
lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As
String, ByVal nShowCmd As Long) As Long
Dim Mail As String
'
Mail = montmartre@noos.fr?subject=titre_du_courrier
--
Site logiciels
http://irolog.free.fr
Mail
http://irolog.free.fr/ecrire/index.htm
Site perso
http://irolog.free.fr/joe/index.htm
Principe d'utilisation des news Groups
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
------------------------------------------------------------------------------------
"pierre.rivet" <pierre.rivet@wanadoo.fr> a écrit dans le message de news:
4491168b$0$879$ba4acef3@news.orange.fr...
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple
relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post
intéressant sur le site VBFrance.com
mais je cherche (désespérément pour l'instant) à étendre cette procédure.
ça fonctionne, mais je dois confirmer l'envoi du envoyer le mail à chaque fois En outre, je ne parviens pas à paramétrer un titre ou un texte.... Je vais continuer à travailler la méthode préconisée par Fred.
Merci encore,
Pierre
"X" a écrit dans le message de news:
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Dim Mail As String ' Mail = ?subject=titre_du_courrier
-- Site logiciels http://irolog.free.fr Mail http://irolog.free.fr/ecrire/index.htm Site perso http://irolog.free.fr/joe/index.htm Principe d'utilisation des news Groups http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm ------------------------------------------------------------------------------------ "pierre.rivet" a écrit dans le message de news: 4491168b$0$879$
Bonjour,
Je cherche à faire un mailing par Internet à l'aide de VB6, par exemple relancer les clients qui ne sont pas venus depuis le 1/2/2006
J'ai déjà vu la réponse de la FAQ N°2 et j'ai téléchargé un post intéressant sur le site VBFrance.com mais je cherche (désespérément pour l'instant) à étendre cette procédure.
Quelqu'un a-t-il une idée ?
Merci d'avance,
Pierre
Fred
Dans : news:4492a8a1$0$896$, pierre.rivet disait :
Merci à Fred,
Pardon de ne pas avoir remercié plus tôt, mais je viens seulement de lire ta réponse.
Mon post n'est pas très ancien :-)
J'ai appliqué l'exemple. Il marche de façon impeccable. J'ai effectivement rajouté une référence à l'objet Microsoft CDO.
Tu peux améliorer un peu le programme en typant tes variables. Par exemple, là où il est écrit :
With CreateObject("CDO.Message")
Tu peux écrire :
Dim msg As New CDO.Message With msg etc ...
Il faut maintenant travailler un peu en essayant d'intercaler la procédure d'envoi dans une boucle de ce style do until Patient.eof ENVOI DE MAIL Patient.movenext loop
Exactement. Il te suffit de faire une procédure paramétrée avec l'adresse du patient :
Sub EnvoiMail(dest As String)
'Le script de Paskal 'avec seulement la ligne suivante à changer :
.To = dest
'à la place de .To = Þ
End Sub
Dans ta boucle, tu appelles :
EnvoiMail adressePatient
Où adressePatient est récupérée dans ton recordset
-- Fred http://www.cerbermail.com/?3kA6ftaCvT
Dans : news:4492a8a1$0$896$ba4acef3@news.orange.fr,
pierre.rivet disait :
Merci à Fred,
Pardon de ne pas avoir remercié plus tôt, mais je viens seulement de
lire ta réponse.
Mon post n'est pas très ancien :-)
J'ai appliqué l'exemple. Il marche de façon impeccable.
J'ai effectivement rajouté une référence à l'objet Microsoft CDO.
Tu peux améliorer un peu le programme en typant tes variables.
Par exemple, là où il est écrit :
With CreateObject("CDO.Message")
Tu peux écrire :
Dim msg As New CDO.Message
With msg
etc ...
Il faut maintenant travailler un peu en essayant d'intercaler la
procédure d'envoi dans une boucle de ce style
do until Patient.eof
ENVOI DE MAIL
Patient.movenext
loop
Exactement.
Il te suffit de faire une procédure paramétrée avec l'adresse du patient
:
Sub EnvoiMail(dest As String)
'Le script de Paskal
'avec seulement la ligne suivante à changer :
.To = dest
'à la place de .To = Þstinataire@fai.com
End Sub
Dans ta boucle, tu appelles :
EnvoiMail adressePatient
Où adressePatient est récupérée dans ton recordset
Dans : news:4492a8a1$0$896$, pierre.rivet disait :
Merci à Fred,
Pardon de ne pas avoir remercié plus tôt, mais je viens seulement de lire ta réponse.
Mon post n'est pas très ancien :-)
J'ai appliqué l'exemple. Il marche de façon impeccable. J'ai effectivement rajouté une référence à l'objet Microsoft CDO.
Tu peux améliorer un peu le programme en typant tes variables. Par exemple, là où il est écrit :
With CreateObject("CDO.Message")
Tu peux écrire :
Dim msg As New CDO.Message With msg etc ...
Il faut maintenant travailler un peu en essayant d'intercaler la procédure d'envoi dans une boucle de ce style do until Patient.eof ENVOI DE MAIL Patient.movenext loop
Exactement. Il te suffit de faire une procédure paramétrée avec l'adresse du patient :
Sub EnvoiMail(dest As String)
'Le script de Paskal 'avec seulement la ligne suivante à changer :
.To = dest
'à la place de .To = Þ
End Sub
Dans ta boucle, tu appelles :
EnvoiMail adressePatient
Où adressePatient est récupérée dans ton recordset
-- Fred http://www.cerbermail.com/?3kA6ftaCvT
pierre.rivet
Private Sub Command5_Click()
'Pour mettre un fichier joint au mail
CommonDialog1.Filter = "Images ou documents (*.bmp;*.jpg;*.doc)|*.bmp;*.jpg;*.doc"