'jour
je suis en train de faire une classe en c# qui me permette d'envoyer des mails en attaquant directement le serveur dhcpsmtp
.
pour l'instant tout fonctionne bien, il y a juste une petite chose que je n'arrive pas bien a saisir.
fred@atlantis:~$ telnet 127.0.0.1 25
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
220 atlantis ESMTP Exim 3.35 #1 Tue, 08 Feb 2005 15:48:31 +0100
EHLO toto
250-atlantis Hello atlantis [127.0.0.1]
250-SIZE
250-PIPELINING
250 HELP
MAIL FROM: <toto@toto.fr>
250 <toto@toto.fr> is syntactically correct
RCPT TO: <moi@free.fr>
250 <moi@free.fr> verified |
Quand je fais mes commandes "a la main", lors du EHLO sont renvoyees un certain nombre de ligne, nombre variable.
La question, c'est : en c#, je fais comment pour lire toutes ces lignes et detecter la fin de l'envoi de la part du serveur ?
Pour l'instant, j'ai ca :
Code :
- private bool sendstring(string toBeSend, bool waitResult, string codeAttendu)
- {
- string s="";
- try
- {
- Console.WriteLine(">>"+toBeSend);
- sw.WriteLine(toBeSend);
- sw.Flush();
- if(waitResult)
- {
- s=sr.ReadLine();
- Console.WriteLine("<<"+s);
- }
- }
- catch(Exception ee)
- {
- Console.WriteLine("exception lecture/écriture!" );
- }
- if(waitResult)
- return(getFirstPart(s)==codeAttendu);
- return(true);
- }
|
Je fais juste un ReadLine() sur mon streamreader, mais comment je peux faire pour tout lire et m'arreter ensuite ? J'ai essaye avec sr.Peek(), mais ca ne marche pas
Une idee ?
Merci 
Message édité par freds45 le 08-02-2005 à 22:48:07