IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau .NET Discussion :

problème socket synchrone


Sujet :

Réseau .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2012
    Messages : 2
    Par défaut problème socket synchrone
    Bonjour tout le monde,
    C'est mon premier post ici

    Bref, je suis débutant en c# et j'ai un problème concernant les sockets synchrones, en fait je réalise un projet qui consiste à faire une communication entre Client/serveur, donc j'ai codé un petit serveur , tout marche très bien la connexion avec le client et la réception et l'envoie du premier message sauf que ma socket se bloque à la réception des messages suivants et une exception
    System.ObjectDisposedException: impossible d'accéder à un objet supprimé
    voila mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
     
     
    using System;
    using System.Collections.Generic;
    using System.Net;
    using System.Net.Sockets;
    using System.Linq;
    using System.Text;
    using System.Threading;
    using System.IO;
     
    namespace BD1.metier
    {
        class SynchronousSocketListener
        {
     
            public static byte[] bytes = new Byte[655360];
     
            public static string data = null;
     
     
     
            private static Socket handler;
            public static void StartListening()
            {
     
     
     
     
                // Establish the local endpoint for the socket.
                // Dns.GetHostName returns the name of the 
                // host running the application.
                IPHostEntry ipHostInfo = Dns.Resolve(Dns.GetHostName());
                IPAddress ipAddress = ipHostInfo.AddressList[0];
                IPEndPoint localEndPoint = new IPEndPoint(ipAddress, 8002);
     
                // Create a TCP/IP socket.
                Socket listener = new Socket(AddressFamily.InterNetwork,
                    SocketType.Stream, ProtocolType.Tcp);
     
                // Bind the socket to the local endpoint and 
                // listen for incoming connections.
                try
                {
                    listener.Bind(localEndPoint);
                    listener.Listen(10);
     
                    // Start listening for connections.
                    while (true)
                    {
                        Console.WriteLine("Waiting for a connection...");
                        // Program is suspended while waiting for an incoming connection.
                       handler = listener.Accept();
     
     
                        // An incoming connection needs to be processed.
                        while (true)
                        {
                            bytes = new byte[655360];
                            data = null;
                                int bytesRec = handler.Receive(bytes);
     
     
     
     
     
                                data += Encoding.ASCII.GetString(bytes, 0, bytesRec);
                                VerifMsg.Verif(data);
     
                            Console.WriteLine("Text received : {0}", data);
                            SendLogon();//  à la fin de cette methode:
             // byte[] msg = Encoding.ASCII.GetBytes(sb.ToString());
               // handler.Send(msg);
     
                            handler.Shutdown(SocketShutdown.Both);
                            handler.Close();
     
                        }
     
     
     
                    }
     
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.ToString());
                }
     
                Console.WriteLine("\nPress ENTER to continue...");
                Console.Read();
     
     
     
    }
    J'ai besoin d'une aide svp

    Merci.

  2. #2
    Membre Expert Avatar de Er3van
    Homme Profil pro
    Architecte Logiciel
    Inscrit en
    Avril 2008
    Messages
    1 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte Logiciel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 430
    Par défaut
    Ce n'est pas tout simplement parce que tu fais handler.Receive(bytes); alors que tu as déjà fermé ton handler après ton premier passage ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Debutant] Problème Socket Linux UDP
    Par AxldenieD dans le forum Réseau
    Réponses: 3
    Dernier message: 01/11/2005, 17h08
  2. Problème Socket
    Par karl2mil1 dans le forum C++Builder
    Réponses: 3
    Dernier message: 12/09/2005, 23h35
  3. Problème socket raw ? bizarre :~
    Par MonsieurAk dans le forum Windows
    Réponses: 2
    Dernier message: 12/07/2005, 14h12
  4. [MFC] Problème Socket + Connexion SQL
    Par BananaUltra3C dans le forum MFC
    Réponses: 6
    Dernier message: 20/05/2005, 16h41
  5. [Réseau] Problème socket
    Par neenee dans le forum Entrée/Sortie
    Réponses: 14
    Dernier message: 18/01/2005, 15h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo