begin process at 2012 02 11 12:58:32
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Réseau & Internet

 > 

Sockets

 > 

lecture message dans socket


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

lecture message dans socket

lundi 12 février 2007 à 12:06:57 | lecture message dans socket

diego29

Membre Club

bonjour,

mon problème est le suivant :
j'ai une fonction qui lit les messages transmis par des sockets, le buffer qui recoit le message fonctionne bien mais je n'arrive pas à le réinitialiser correctement c'est à dire qu'il garde le message précédent et ne fait qu'écrire le nouveau par dessus donc il peut rester des caractères du précédent.

voici ma fonction :

privatevoid ReceiveCallback(IAsyncResult asyncResult)

{
      string[] obj;

      try

      {

            //On récupere le socket de la connection
            Socket socket = ( Socket )asyncResult.AsyncState;
            //on lit les données sur le socket
            int read = socket.EndReceive(asyncResult);
            //si on lit plus de 0 octet alors c'est que tout le message a été transmis

            if ( read > 0 )     {

                  //ajoute le message

                  obj =

new string [] { "Serveur dit :" + Encoding .ASCII.GetString( this .readbuf)};
                  this .listBox.Invoke( new DelegateDisplay ( this .DisplayMessage),obj);

                  // reset buffer 
                  Buffer .SetByte( this .readbuf, 0, 0);

                    // On initie une lecture
                    this .SocketClient.BeginReceive(t his .readbuf,0, this .readbuf.Length, SocketFlags .None, new    AsyncCallback (ReceiveCallback), this .SocketClient);
                  }
                        //Si 0 octet est transmis alors on doit fermer la connection
                  if ( read == 0 && ! this .LocalsocketClientIsShutingDown)

                  {
                        this .SocketClient.Close();
                        obj =
new string [] { "Fermeture socket distante" };
                        this .listBox.Invoke( new DelegateDisplay ( this .DisplayMessage),obj);
                    }
           }
         catch ( SocketException ex)
         {
               obj =
new string [1] {ex.Message};
               this .listBox.Invoke( new DelegateDisplay ( this .DisplayMessage),obj);
           }
}

merci d'avance


Cette discussion est classée dans : message, string, socket, obj, readbuf


Répondre à ce message

Sujets en rapport avec ce message

Serveur multiclient [ par xankow ] Salut,je suis en train de developper une application en C#, mais je n'en pas beaucoup de base dans ce langage.J'ai trouver plusieur sources qui m'ont InvaLidOperationException après envoi de Message par Socket Asynchrone [ par sebkill25 ] Bonjour,Dans une application Client/serveur de messagerie instantannée j'ai les fonctions suivantes permettant la réception d'un message envoyé.Code : deconnexion de serveur [ par OxN ] Bonjour j'ai un client qui envoi un message a un serveur. Toutefois je n'arrive pas a deconnecter mon serveur afin de le reconnecter. voici le code d socket dans un system distribué [ par H00R18le ] bonjour , je cherche à crée trois application qui communiquent entre elles,chaque application dans une machine elles communiquent en tant que client e Probleme C# BDD OutOfRange [ par KrqcS ] Bonjour à vous, j'essaye désesperemment de mettre le contenu de la colonne d'une table dans une combobox mais pas moyen. [code=cs]OleDbConnection Cal les données chaines ou binaires sont tronquées [ par bachirmk ] bonjour à vous,j'ai un ptit pbm concernant sql server 2000.dans ma base de données j'ai une table stagiaire(mat_stag(varchar(6), nom(varchar(25)), pre NetworkStream (Socket) : Lecture d'un message [ par Moomoon07 ] Bonjour, J'ai une question concernant les sockets : Je réceptionne dans un socket TCP des messages de taille variable. Étant donné que je ne connais Substitution string string dans une phrase [debutant] [ par jeanpierre691 ] Salut Bon voilà, je fais actuellement un projet très simple sur C#, je l'ai commencé il n'y a pas longtemps, et pourtant, je rencontre quelques diffi Probleme de Socket C# [ par Dropsys ] Bonjour, depuis quelques jours, j'essaye de réaliser un salon de discussion un peu compliqué, avec la possibilité de changer de pseudo/image, avec pl l'index se trouve en dehors des limites du tableau (débutant) [ par soft57 ] Bonjour, J'ai un TP à rendre, mais j'ai une erreur que je n'arrive vraiment pas à résoudre. Voici l'énoncé : [quote]Initialiser un tableau de 5 mot


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales