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

MFC Discussion :

Trame socket


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2003
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 39
    Par défaut Trame socket
    Salut a tous,
    j'utlise la classe Csocket avec un programme en MFC, mon probleme c'est que lorque j'envoie 2 fonctions send a la suite, le serveur ne recois qu'une trame.
    voici le code coté client (envoi) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    m_sSocketClient.Send(m_fichier,m_fichier.GetLength(),0);
    m_sSocketClient.Send(m_fichier,m_fichier.GetLength(),0);
    et voici le code coté serveur (reception) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    rec = m_sSocketServeur.Receive(pRecu,iTampon,0);       
            pRecu[rec]=0;
            AfxMessageBox(pRecu);
            delete(pRecu);
    rec1 = m_sSocketServeur.Receive(pRecu1,iTampon,0);       
            pRecu1[rec]=0;
            AfxMessageBox(pRecu1);
            delete(pRecu1);
    Il n'y a qu'une seul afxMessageBox qui s'ouvre avec les 2 message concatené. Comment faire pour separé chaque reception.

    Merci

  2. #2
    Membre Expert
    Avatar de hiko-seijuro
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 011
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 011
    Par défaut
    euh comprends pas la question :S
    tu peux la reformuler ?

  3. #3
    Membre averti
    Inscrit en
    Janvier 2003
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 39
    Par défaut
    Voila j'envoie 2 chaines et je veux ke ces 2 chaines soit dans 2 trames differentes.
    Ce que fait mon programme c'est qu'il concatene mes 2 chaines et qu'il les met dans la meme trame ....

  4. #4
    Membre confirmé Avatar de jagboys
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    166
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 166
    Par défaut Trame
    Bonjour,
    A mon avis, il faut tout d'abord que tu définisses la longueur d'une unité de données. Il faut que le client et le serveur se mettent d'accord pour echanger des messages de taille en nombre d'unité (soit au début de la communication ou bien dans chaque envoi par exemple).
    Côté reception, connaissant la taille des messages, il suffit ensuite de traiter chaque reception. Par ailleurs avec cette méthode on peut par exemple verifier l'intégrité de l'echange client / serveur en comptant le nombres de packets reçus !

  5. #5
    Membre chevronné Avatar de Mayti4
    Inscrit en
    Février 2004
    Messages
    442
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 442
    Par défaut
    Citation Envoyé par jonny
    Voila j'envoie 2 chaines et je veux ke ces 2 chaines soit dans 2 trames differentes.
    Ce que fait mon programme c'est qu'il concatene mes 2 chaines et qu'il les met dans la meme trame ....
    Si le système peut tout envoyer en un paquet, c'est logique qu'il le fasse.

    Tu peux par exemple mettre "\r\n" à la fin de chaque message,
    et donc tu pourras récupérer les messages séparément.

Discussions similaires

  1. Réponses: 3
    Dernier message: 18/02/2015, 18h06
  2. Trame et socket
    Par tenderstoune dans le forum Débuter
    Réponses: 4
    Dernier message: 23/08/2008, 10h56
  3. [Socket] trames ligne par ligne
    Par gailup dans le forum Général Dotnet
    Réponses: 3
    Dernier message: 27/01/2008, 19h43
  4. sockets / trames
    Par blackaagony dans le forum C++
    Réponses: 3
    Dernier message: 08/11/2007, 14h21
  5. Réponses: 2
    Dernier message: 26/09/2007, 16h45

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