Socket et C#

Jeebee67 Messages postés 4 Date d'inscription jeudi 2 février 2006 Statut Membre Dernière intervention 24 juillet 2008 - 23 juil. 2008 à 12:44
Jeebee67 Messages postés 4 Date d'inscription jeudi 2 février 2006 Statut Membre Dernière intervention 24 juillet 2008 - 24 juil. 2008 à 10:37
Bonjour à tous !

Voilà je débute dans le réseau en programmation. J'ai trouvé une document sur les sockets en C# (initialisation du listener coté server et du client) mais il n'était pas indiqué la méthode pour envoyer ensuite des données via cette connexion établie. Quelqu'un pourrait-il me dire comment faire ?

Merci d'avance !

5 réponses

10demon10 Messages postés 63 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 28 juin 2012
23 juil. 2008 à 12:59
Salut

J'ai personnellement travailler aussi sur les socket en c# et je peut de conseiller cela çà ma beaucoup aider je l'es trouver très complet et très bien commenté. Bon courage

http://www.csharpfr.com/codes/CLIENT-SERVEUR-GENERIQUE-MULTI-CLIENT-SERIALISATION-DESERIALISATION-ECHANGES_45655.aspx

Stay GREAT forever [  ]
0
Jeebee67 Messages postés 4 Date d'inscription jeudi 2 février 2006 Statut Membre Dernière intervention 24 juillet 2008
23 juil. 2008 à 13:52
Ok merci beaucoup, je vais jeter un oeil de suite
0
Jeebee67 Messages postés 4 Date d'inscription jeudi 2 février 2006 Statut Membre Dernière intervention 24 juillet 2008
23 juil. 2008 à 16:16
Bon j'arrive à faire passer des messages (exercice du chat pour débuter bien sûr) néanmoins j'ai un truc bizarre.
Je me suis entrainé à faire deux applis consoles. L'une qui sert de serveur et affiche le texte envoyé depuis l'appli cliente sauf que j'ai plein d'espace dans ma console entre mes messages envoyés.

Voici mon code pour ceux qui veulent bien y jeter un coup d'oeil :

Partie serveur :

try
            {
                //On attend une connection qu'on stocke ensuite dans socket.
                socket = listener.AcceptSocket();

                if (socket != null)
                {
                    Console.WriteLine("Une connection a été acceptée.");
                }
                else
                {
                    Console.WriteLine("Problème avec l'acceptation de la connection.");
                }

                while (true)
                {
                    Byte[] buffer = new Byte[200];
                    socket.Receive(buffer);
                    Console.WriteLine("client dit : " + Encoding.ASCII.GetString(buffer));
                }
            }
            catch
            {
                Console.WriteLine("Connexion perdue");
            }

Et ma partie qui envoit les messages de mon appli cliente:

while (true)
                {
                    Console.WriteLine("Message à envoyer : ");
                    message = Console.ReadLine();

                    Byte[] buffer = Encoding.ASCII.GetBytes(message.ToCharArray());
                    netStream.Write(buffer, 0, buffer.Length);
                }

Merci d'avance pour les réponses
0
10demon10 Messages postés 63 Date d'inscription vendredi 23 avril 2004 Statut Membre Dernière intervention 28 juin 2012
23 juil. 2008 à 18:09
J'ai pas tous compris ton "j'ai plein d'espace dans ma console entre mes messages envoyés" néanmoin en regardant ton code je constate que Console.WriteLine("Message à envoyer : "); il y a déjà 2 espace entre le " : "  si c'est çà change et met
=> Console.WriteLine("Message à envoyer:");

Stay GREAT forever [  ]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Jeebee67 Messages postés 4 Date d'inscription jeudi 2 février 2006 Statut Membre Dernière intervention 24 juillet 2008
24 juil. 2008 à 10:37
Oui non c'est vrai je me suis un peu mal exprimé. En fait j'ai plein de retour à la ligne. Par exemple je vais avoir :

Message1

Message2

....

Et ainsi de suite. Bref beaucoup de retour à la ligne entre chaque message que j'envoie.

On m'a dit qu'il serait possible d'utiliser StreamReader et StreamWriter. Ca semble possible mais je n'arrive pas à les utiliser. Si jamais quelqu'un a quelques lignes pour m'expliquer...
0
Rejoignez-nous