OVH Cloud OVH Cloud

Envoi de mails

10 réponses
Avatar
movierixheim
Bonjour/soir,

je fais un petit programme et j'aimerai qu'il puisse envoyer des mails avec
pièces jointes.

J'aimerai savoir comment faire pour lui faire envoyer le mail.

Merci d'avance.

10 réponses

Avatar
Jean-Marc Molina
Faut pas abuser quand même, cherche au moins le mot "mail" dans le manuel
PHP pour avoir un élément de réponse et poser une question qui vale la peine
qu'on prenne le temps de répondre. Consulter les archives du newsgroup
pourrait aussi t'aider (je le fais à partir de Google), je peux parier que
cette question a déjà été posée plus de 50 fois (sans exagérer ^^).

Je dis pas ça pour te blesser ni être désagréable, mais plutôt pour t'aider.
Bonne journée,
JM

--
Europe > France > Lyon
Clé AntiPourriel : PASUNPOURRIEL (ne pas retirer)
Avatar
Benoit Rousseau
movierixheim wrote:
Bonjour/soir,

je fais un petit programme et j'aimerai qu'il puisse envoyer des mails avec
pièces jointes.

J'aimerai savoir comment faire pour lui faire envoyer le mail.

Merci d'avance.


Ca n'a rien à voir avec du C++ ca...

Il faut que tu consultes des documents relatifs à SMTP (Send Mail
Transfert Protocol) via Google.

Pour un mail simple, une connection directe au port 25 devrait marcher(?)

--
--------------------------------------------
Benoît Rousseau : roussebe at spray dot se
Jouez en programmant : http://realtimebattle.sourceforge.net/

Avatar
movierixheim
Merci de vos réponses mais si je pose la question, c'est que j'ai déjà un
peu cherché...
J'ai trouvé quelques trucs sur le site de cpp france mais c'est un peu trop
lourd pour le petit utilitaire que je veux faire.

Je veux simplement savoir si c'est possible comment faire pour que le
programme envoie un mail avec pour sujet Tedit1->Text et des pièces jointes
qui sont générées par le prog....

Donc, à mon avis, regarder du côté de smtp n'est pas trop utile...

De plus, il me semble que je suis dans le NG lang.c++ ?!?
Je veux bien croire que c'est embêtant de répondre à des questions d'un
niveau aussi faible, mais la demande n'est pas trop élevée par rapport à
d'autre NG donc je pense qu'ici vous pouvez prendre le temps de répondre à
des questions de débutants.

Cordialement,
Gaëtan

"movierixheim" a écrit dans le message de
news: bpu6gm$bog$
Bonjour/soir,

je fais un petit programme et j'aimerai qu'il puisse envoyer des mails
avec

pièces jointes.

J'aimerai savoir comment faire pour lui faire envoyer le mail.

Merci d'avance.




Avatar
Guillaume Duc
Bonjour,

Le problème est qu'il n'existe pas de primitives permettant de faire du smtp
dans la librairie standard C++. Il est donc necessaire soit de trouver et
d'utiliser des librairies C/C++ (peut être qu'elles sont fournis avec ton
environnment de developpement si tu en utilise un d'assez 'gros') qui font
ça toutes seules ou bien d'en créer une en utilisant des sockets (et dans
ce cas il faut comprendre le protocole SMTP et MIME (pour les pièces
jointes, ce n'est pas le plus facile) et faire de la prog système pour
gerer les sockets).

Le groupe lang.c++ est en théorie réservé aux questions sur le language c++
par lui même ou sa librairie standard. Les extensions du type socket ou
libriaire smtp sont générallement dépendante du système et donc il faut
aller chercher du coté des group unix ou windows.

Bon courage,

Cordialement,
Guillaume Duc

movierixheim wrote:
Merci de vos réponses mais si je pose la question, c'est que j'ai déjà un
peu cherché...
J'ai trouvé quelques trucs sur le site de cpp france mais c'est un peu
trop lourd pour le petit utilitaire que je veux faire.

Je veux simplement savoir si c'est possible comment faire pour que le
programme envoie un mail avec pour sujet Tedit1->Text et des pièces
jointes qui sont générées par le prog....

Donc, à mon avis, regarder du côté de smtp n'est pas trop utile...

De plus, il me semble que je suis dans le NG lang.c++ ?!?
Je veux bien croire que c'est embêtant de répondre à des questions d'un
niveau aussi faible, mais la demande n'est pas trop élevée par rapport à
d'autre NG donc je pense qu'ici vous pouvez prendre le temps de répondre à
des questions de débutants.

Cordialement,
Gaëtan

"movierixheim" a écrit dans le message
de news: bpu6gm$bog$
Bonjour/soir,

je fais un petit programme et j'aimerai qu'il puisse envoyer des mails
avec

pièces jointes.

J'aimerai savoir comment faire pour lui faire envoyer le mail.

Merci d'avance.






Avatar
Benoit Rousseau
movierixheim wrote:
Merci de vos réponses mais si je pose la question, c'est que j'ai déjà un
peu cherché...
J'ai trouvé quelques trucs sur le site de cpp france mais c'est un peu trop
lourd pour le petit utilitaire que je veux faire.

Je veux simplement savoir si c'est possible comment faire pour que le
programme envoie un mail avec pour sujet Tedit1->Text et des pièces jointes
qui sont générées par le prog....

Donc, à mon avis, regarder du côté de smtp n'est pas trop utile...

De plus, il me semble que je suis dans le NG lang.c++ ?!?
Je veux bien croire que c'est embêtant de répondre à des questions d'un
niveau aussi faible, mais la demande n'est pas trop élevée par rapport à
d'autre NG donc je pense qu'ici vous pouvez prendre le temps de répondre à
des questions de débutants.

Cordialement,
Gaëtan

"movierixheim" a écrit dans le message de
news: bpu6gm$bog$

Bonjour/soir,

je fais un petit programme et j'aimerai qu'il puisse envoyer des mails


avec

pièces jointes.

J'aimerai savoir comment faire pour lui faire envoyer le mail.

Merci d'avance.






Le niveau de la question n'est pas spécialement faible, mais le sujet ne

correspond pas au C++. Ce n'est pas parceque tu programmes en C++ que ta
question a à voir avec le C++ standard...

Mais pour repondre à ta question et prolonger ma reponse précédente, tu
dois te connecter au port 25 d'un server SMTP avec un socket et que tu
communique avec le server (envoyer les informations (avec un write) et
lire le retour (eventuellement))

Il faut que tu envoies :
"nom.de.ton.hote n" (?)
(retourne quelquechose)
"mail from: "
(retourne "250 Sender Ok")
"rcpt to: "
(retourne "250 Recipient Ok")
"data"
("354 Ok Send data ending with .")
"Tom message"
"Qui doit finir par un . sur une seule ligne"
"."
("250 Message received : ...")
"quit"
("...")

et ferme ta connection
Bien sur, c'est un exemple un peu simple, mais c'est toi qui l'a
demandé... Si tu veux plus de détail, va chercher plus d'info sur SMTP...





--
--------------------------------------------
Benoît Rousseau : roussebe at spray dot se
Jouez en programmant : http://realtimebattle.sourceforge.net/


Avatar
Jean-Marc Molina
Bonjour Gaëtan,

Toutes mes excuses car j'ai répondu complètement à côté de la plaque, je me
suis trompé de newsgroup :).
Tu n'es pas étonné que je te dise de lire dans le manuel de PHP alors que tu
nous parlais C++ ??? ^^

Enfin pour envoyer un courriel tu peux utiliser des APIs comme MFC ou
wxWindows. Tu peux aussi avoir recours à du plus bas niveau en utilisant
Winsocks, je parle de Windows. wxWindows c'est MFC mais pour Windows/Linux
et Mac je crois aussi. Tu trouveras plus d'infos sur le site de wxWindows,
documentation, classe wxEmail. Tu devrais trouver tout ce dont tu as besoin.

Pour ce newsgroup C++, juste une remarque. Je trouve dommage qu'on ne traite
pas le C++ au sens large du terme, APIs comprises (surtout quand on peut
parler de multi plate-formes, wxWindows,...). Il n'existe pas vraiment de
forums C++ consacrés aux APIs et forcément aussi bien débutants, qu'experts,
on est perdu. On renvoit trop souvent ces pauvres malheureux qui cherchent
de l'aide sur des newsgroups comme fr.comp.os.ms-windows.programmation.
C'est un peu trop large à mon goût la programmation Windows :). L'idée la
plus logique quand on a un problème avec son projet écrit en C++, c'est de
poser une question sur un newsgroup C++, pas sur le newsgroup "programmation
Windows" même si le projet tourne sous Windows, de même sur un hypothétique
newsgroup "réseau" s'il s'agit d'envoyer un courriel... Qu'en pensez-vous ?
(j'espère ne pas avoir ressorti un vieux débat d'après-guerre :p).

Pour résumer je trouve que c'est contre-indiqué car personne n'est censé
savoir que ce newsgroup parle uniquement du langage C++ et non pas du C++
dans tous "ses" sens du terme. Comment pourrait-on le savoir d'ailleurs si
ce n'est en posant une première question ? Moi-même j'ai du faire l'erreur à
mes débuts, aucun signalisation donc tout le monde fonce dans le tas. C'est
un peu le problème des newsgroups comparés aux forums, mais ceci est une
autre histoire :)

Bon j'espère t'avoir au moins aidé Mr Gaëtan ^^,
JM

--
Europe > France > Lyon
Clé AntiPourriel : PASUNPOURRIEL (ne pas retirer)
Avatar
movierixheim
Merci à tous pour vos éclaircissements sur mon problème et sur le but de ce
NG. Il est vrai que je n'ai pas pris le temps de chercher et de lire la
charte.
Un homme averti en vaut deux.
Vos explications devraient m'aider à résoudre ma lacune.

Bonne journée à toutes et tous.
Cordialement,
Gaëtan.

"movierixheim" a écrit dans le message de
news: bpu6gm$bog$
Bonjour/soir,

je fais un petit programme et j'aimerai qu'il puisse envoyer des mails
avec

pièces jointes.

J'aimerai savoir comment faire pour lui faire envoyer le mail.

Merci d'avance.




Avatar
Christophe de VIENNE
Jean-Marc Molina wrote:
Comment pourrait-on le savoir d'ailleurs si ce n'est en posant une première question ?


La charte est postée tous les 15 jours, ce qui fait qu'à la première
connection au forum on a toutes les chances de l'avoir dans
l'historique. Et si ce n'est pas le cas c'est vite de faire une petite
recherche sur groups.google.

mes 2 centimes d'€

A+

Christophe

Avatar
kanze
"Jean-Marc Molina" wrote in message
news:<bpvngn$670$...

Toutes mes excuses car j'ai répondu complètement à côté de la plaque,
je me suis trompé de newsgroup :). Tu n'es pas étonné que je te dise
de lire dans le manuel de PHP alors que tu nous parlais C++ ??? ^^


Ça m'avait aussi étonné, mais je croyais que tu voulais faire de
l'ironie, et qu'il y avait peut-être quelque chose de subtile que je
n'avais pas compris.

Enfin pour envoyer un courriel tu peux utiliser des APIs comme MFC ou
wxWindows. Tu peux aussi avoir recours à du plus bas niveau en
utilisant Winsocks, je parle de Windows. wxWindows c'est MFC mais pour
Windows/Linux et Mac je crois aussi. Tu trouveras plus d'infos sur le
site de wxWindows, documentation, classe wxEmail. Tu devrais trouver
tout ce dont tu as besoin.


Il faut voir s'il pourrait introduire wxWindows dans le projet
uniquement pour envoyer un email.

Pour ce newsgroup C++, juste une remarque. Je trouve dommage qu'on ne
traite pas le C++ au sens large du terme, APIs comprises (surtout
quand on peut parler de multi plate-formes, wxWindows,...).


Dans l'ensemble, je crois que c'est permis, dans la mésure que la
bibliothèque en question est réelement multi-plateforme. On a bien
parlé de ACE, dans le temps, et personne ne se plaint si on parle de
Boost aujourd'hui.

Maintenant, s'il arrive que ça finit par faire plus de la moitié des
postes, à ce moment-là, il faudrait penser à faire un groupe spécifique
pour la bibliothèque. Mais pour le moment, on n'en est pas là avec
wxWindows.

Il n'existe pas vraiment de forums C++ consacrés aux APIs et forcément
aussi bien débutants, qu'experts, on est perdu. On renvoit trop
souvent ces pauvres malheureux qui cherchent de l'aide sur des
newsgroups comme fr.comp.os.ms-windows.programmation. C'est un peu
trop large à mon goût la programmation Windows :). L'idée la plus
logique quand on a un problème avec son projet écrit en C++, c'est de
poser une question sur un newsgroup C++, pas sur le newsgroup
"programmation Windows" même si le projet tourne sous Windows, de même
sur un hypothétique newsgroup "réseau" s'il s'agit d'envoyer un
courriel... Qu'en pensez-vous ? (j'espère ne pas avoir ressorti un
vieux débat d'après-guerre :p).


C'est difficile. Windows, c'est Windows ; je ne vois pas pourquoi on le
discuterait autrement que dans fcomp. Quant aux questions plus
générales, pourquoi doit-on les discuter ici, quand la réponse serait
identique s'il programmait en Basic ou en Cobol. Qu'on discute de
comment concevoir une interface C++ pour une classe de email,
d'accord. Mais des discussions sur les implications de RFC 2821 ?

D'autant plus qu'au moins sur mon système, la solution classique, c'est
d'utiliser un programme tout fait, au moyen de system :

system( "/usr/lib/sendmail ..." ) ;

Pas besoin de connaître quoique ce soit de RFC 2821, mais il faut bien
connaître le système (dans ce cas-ci, Unix), et les conventions du
système, un peu.

Pour résumer je trouve que c'est contre-indiqué car personne n'est
censé savoir que ce newsgroup parle uniquement du langage C++ et non
pas du C++ dans tous "ses" sens du terme.


Ça veut dire quoi, C++ ? On peut bien se tromper en ce qui concerne la
présence ou l'absense de telle ou telle bibliothèque, mais j'ai du mal à
imaginer quelqu'un de bonne foi qui penserait que le fait que la porte
par défaut du serveur de mail soit 25 ait quoique ce soit à faire avec
C++.

--
James Kanze GABI Software mailto:
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16

Avatar
Alexandre
"movierixheim" a écrit dans le message de
news:bpvdb6$sh8$
Merci de vos réponses mais si je pose la question, c'est que j'ai déjà un
peu cherché...
J'ai trouvé quelques trucs sur le site de cpp france mais c'est un peu
trop

lourd pour le petit utilitaire que je veux faire.

Je veux simplement savoir si c'est possible comment faire pour que le
programme envoie un mail avec pour sujet Tedit1->Text et des pièces
jointes

qui sont générées par le prog....


C'est HS ici (on te l'a déjà dit) mais je peux te donner une piste :
Apparement tu utilises C++ Builder (Edit1->Text, ça ressemble bien à BCB
ça). Alors tu regardes bien ta palette de composants, onglet "internet", et
tu verras un composant POP (qui sait récuperer des mails) et un composant
SMTP (qui sait les envoyer)... Super simples à utiliser. Tu lis un peu la
doc, et hop, tu envoie ton mail.


Donc, à mon avis, regarder du côté de smtp n'est pas trop utile...

De plus, il me semble que je suis dans le NG lang.c++ ?!?
Ben oui, mais C++ ne veut pas dire "n'importe quoi programmé en C++".


Je veux bien croire que c'est embêtant de répondre à des questions d'un
niveau aussi faible, mais la demande n'est pas trop élevée par rapport à
d'autre NG donc je pense qu'ici vous pouvez prendre le temps de répondre à
des questions de débutants.


Aucun rapport avec le niveau. Simplement, le langage C++ *ne sais pas*
envoyer un mail. Il faut utiliser, comme on te l'a dit, une API comme
Sockets, etc... donc lié au système, pas au langage.


Cordialement,
Gaëtan
Idem.

Alex