Discussion: [REQ] Mail en C#
Bonjour,
Pour un projet en entreprise j'aurais besoin de codé un truc qui permetrait d'envoyer des mail en C#
merci d'avance
![]() |
Vous n'êtes pas enregistré. Loggez-vous ou inscrivez vous.
Pages: 1
Bonjour,
Pour un projet en entreprise j'aurais besoin de codé un truc qui permetrait d'envoyer des mail en C#
merci d'avance
pourquoi utiliser le C sharp ? microsoft s' il y a des langages bien plus simple pour faire ce la ? 

je pourrais te faire sa, mais en c++ :p
pourquoi utiliser le C sharp ? microsoft s' il y a des langages bien plus simple pour faire ce la ?
je pourrais te faire sa, mais en c++ :p
Mdr si il demande sa c'est qui doit bien avoir une raison, donc ok C++ c'et cool mais lui y cherche en C# !
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>
int my_socket;
void snd(char *s)
{
send(my_socket, s, strlen(s), 0);
}
int printUsage(char *progname)
{
printf("Usage: %s -t destination [-f from] [-s subject] -m message\n", progname);
return 1;
}
int main(int argc, char *argv[])
{
int ret;
struct sockaddr_in my_addr;
char *from=0, *to=0, *subject=0, *message=0;
bool verbose = false;
char optchar;
while ((optchar = getopt (argc, argv, "f:t:s:m:v")) != -1)
{
switch (optchar)
{
case 'f':
from = strdup(optarg);
break;
case 't':
to = strdup(optarg);
break;
case 's':
subject = strdup(optarg);
break;
case 'm':
message = strdup(optarg);
break;
case 'v':
verbose = true;
break;
default:
return printUsage(argv[0]);
}
}
if(!to || !message)
return printUsage(argv[0]);
if(!subject)
subject = strdup("No subject");
if(!from)
from = strdup("Unknown");
if(verbose)
{
printf("From: %s\n", from);
printf("To: %s\n", to);
printf("Subject: %s\n", subject);
printf("Message: %s\n", message);
}
my_addr.sin_family = AF_INET;
my_addr.sin_port = htons(25);
my_addr.sin_addr.s_addr = inet_addr("24.201.245.36");
memset(&(my_addr.sin_zero), '\0', 8);
my_socket = socket(AF_INET, SOCK_STREAM, 0);
if(my_socket == -1)
printf("error while initialising socket\n");
ret = connect(my_socket, (const struct sockaddr *)&my_addr, sizeof(my_addr));
if(ret == -1)
printf("unable to connect\n");
int stage = 0;
char buffer[4096];
while(1)
{
ret = recv(my_socket, buffer, 4096, 0);
if(ret != -1 && ret != 0)
{
buffer[ret] = '\0';
if(strstr(buffer, "220") == buffer)
{
if(verbose)
printf("Connected\n");
snd("HELO localhost\r\n");
}
if(strstr(buffer, "250") == buffer)
{
switch(stage)
{
case 0:
sprintf(buffer, "MAIL FROM: %s\r\n", from);
snd(buffer);
stage++;
break;
case 1:
sprintf(buffer, "RCPT TO: %s\r\n", to);
snd(buffer);
stage++;
break;
case 2:
snd("data\r\n");
stage++;
break;
case 3:
if(verbose)
printf("Closing connection\n");
snd("quit\r\n");
stage++;
break;
}
}
if(strstr(buffer, "354") == buffer)
{
if(verbose)
printf("Sending message...");
if(subject)
{
sprintf(buffer, "Subject: %s\r\n", subject);
snd(buffer);
}
snd(message);
snd("\r\n.\r\n");
if(verbose)
printf("Ok.\n");
}
}
else
break;
}
return 0;
}Dernière édition par rvns (19/06/08 07:25:16)
Envoyez des mails... mouarf, un petit script php et c'est dans la poche 
lol je sais bien qu'en php c'est facil 
Le truc c'est que je dois metre en place un Meta Annuaire microsoft (miis pour ceux qui connaissent) et qu'il faut coder 2 3 truc pour que ca marche.
Le tout est en C# donc j'aurai voulu intégrer mon truc pour envoyer les log par mail dans ce meme programme.
J'ai vu qu'il y a une librarie System.Net.Mail mais je n'ai rien reussi a envoyer ...
J'ai vu qu'il y a une librarie System.Net.Mail mais je n'ai rien reussi a envoyer ...
Exactement, tu dois avoir un objet de type System.Net.Mail.MailMessage qui sera ton mail.
Ensuite tu dois avoir un objet de type System.Net.Mail.SmtpClient qui contiendra les informations d'authentification au serveur mail pour l'envoi de ton mail.
J'espère que ceci t'aidera.
caillou a écrit:J'ai vu qu'il y a une librarie System.Net.Mail mais je n'ai rien reussi a envoyer ...
Exactement, tu dois avoir un objet de type System.Net.Mail.MailMessage qui sera ton mail.
Ensuite tu dois avoir un objet de type System.Net.Mail.SmtpClient qui contiendra les informations d'authentification au serveur mail pour l'envoi de ton mail.J'espère que ceci t'aidera.
un exemple :
SmtpClient client = new SmtpClient("serveur smtp");// smtp.free.
MailAddress from = new MailAddress("ton_mail@mail.com");
MailAddress to = new MailAddress("mail_destinataire@gmail.com");
MailMessage message = new MailMessage(from, to);
message.Body = "Le corps du message";
message.Subject = "le sujet";
client.Send(message);j'ai tester celui la, ça passe chez moi
Ou plus simple même t'as une méthode dans SmtpClient ou tu passe le msg, mails ... en argument
ex :
SmtpClient client = new SmtpClient("serveur smtp");// smtp.free.
client.Send("ton_mail@mail.com", "maildestinataire@mail.com", "sujet", "message");Après t'a aussi un send Asynchrone avec un callback quand l'envoie est terminé, tu peux savoir si ton mail s'est envoyé, est en erreur ...
t'a un exemple ici : http://msdn.microsoft.com/en-us/library
lient.aspx
Une petite recherche sur google et t'as une réponse...
merçi
![http://i31.tinypic.com/jigwu8.jpg[/img[[img]http://i14.tinypic.com/8c13iis.jpg](http://i31.tinypic.com/jigwu8.jpg[/img[[img]http://i14.tinypic.com/8c13iis.jpg)

C'est bien plus simple en C# qu'en C++ 
Posts [ 12 ]
Pages: 1
Powered by FluxBB
[ Generated in 0.168 seconds, 9 queries executed ]
OleooRadio est une radio editee par Radionomy.