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 C Discussion :

envoie en boucle fonctionne pas


Sujet :

Réseau C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 94
    Par défaut envoie en boucle fonctionne pas
    salut,
    je veux faire un client qui envoie au serveur des messages tapé au clavier.
    voila la portion du code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     while(1) {
        Reception(NotreSocket);
        scanf("%s",CommandeEnvoyer);
        printf("%s\n",CommandeEnvoyer);
        if (strcasecmp(CommandeEnvoyer,"quit") == 0)
          break;
     
        Envoie(NotreSocket,CommandeEnvoyer);
     
      }
    voila la sortie coté serveur :
    ./Serveur
    sending : Hello..
    ls
    voila la sortie coté client :
    ./client1 localhost
    Connected to localhost
    Recpetion de Hello.
    ls
    ls
    sending : ls.
    merci
    allo
    quit
    le client envoie bien "ls", mais les autres (merci, allo, quit) non.
    la boucle est censé terminer lors de la lecture de "quit", mais ce que le tape qu clavier n'est pas lu.

    s'il vous paît aider moi à résoudre ce point
    merci

  2. #2
    Membre Expert Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    Août 2004
    Messages
    2 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Août 2004
    Messages : 2 366
    Par défaut
    dans la boucle while je vois "Reception", que fait cette fonction ? Es-tu sûre de ne pas être bloqué dedans ?

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 94
    Par défaut
    voila le code des fonctions :
    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
     
    void Envoie(int So,const char* Commande) {
      int NbreEnvoye;
      if ( (NbreEnvoye = write(So,Commande,sizeof(Commande))) < 0) {
        perror("write");
      }
      else
        fprintf(stderr,"sending : %s.\n",Commande);
    }
     
    void Reception(int So) {
      int Lecture;
      char Buffer[TAILLE_BUFFER];
     
      if ( (Lecture=read(So,Buffer,TAILLE_BUFFER)) < 0)
            perror("read");
      else 
        fprintf(stdout,"Recpetion de %s\n",Buffer);
    }
    merci

  4. #4
    Membre Expert Avatar de fregolo52
    Homme Profil pro
    Développeur C
    Inscrit en
    Août 2004
    Messages
    2 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur C

    Informations forums :
    Inscription : Août 2004
    Messages : 2 366
    Par défaut
    Vu tes traces (printf) tu es bloqué dans Read.
    Donc ton client n'enverra rien tant qu'il n'aura pas recu qq chose.

Discussions similaires

  1. [MySQL] Envoi mail ne fonctionne pas !
    Par mikael2235 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 20/05/2010, 17h36
  2. Réponses: 4
    Dernier message: 27/05/2009, 15h50
  3. envoi formulaire ne fonctionne pas
    Par isarno dans le forum Dreamweaver
    Réponses: 7
    Dernier message: 06/12/2007, 22h44
  4. [MySQL] Boucle qui ne fonctionne pas bien que la 1ère fois
    Par R.L. dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 27/05/2006, 21h59
  5. ma boucle ne fonctionne pas
    Par mélo6 dans le forum ASP
    Réponses: 2
    Dernier message: 17/06/2005, 11h53

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