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

SDL Discussion :

Probleme de transmission SDLNet_UDP_Send


Sujet :

SDL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Probleme de transmission SDLNet_UDP_Send
    Bonjour tout le monde !

    J'ai un petit probleme. Je veux envoyer un paquet UDP dont le champ data est constitué comme ça :
    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
     
    int SimpleTextFrame::buildDataToSend(char *buf)
    {
        //code est un entier, msgSize aussi, déjà initialisés
        //msg est une string
        memcpy(buf,&code,sizeof(int));
        memcpy(buf+sizeof(int),&msgSize,sizeof(int));
        strncpy(buf+2*sizeof(int),msg.c_str(),msgSize*sizeof(char)+1);
     
        return (2*sizeof(int)+msgSize*sizeof(char)+1);
    }
     
    ...
    UDPpacket *pack = SDLNet_AllocPacket(SGNE_MAX_MSG_LENGTH);
    if (pack != NULL)
    {
        int len = frame->buildDataToSend((char*)pack->data);
        pack->channel = channel;
        pack->len = len;
        pack->address = address;
     
        ok = (SDLNet_UDP_Send(sock, channel, pack) > 0);
     
        SDLNet_FreePacket(pack);
    }
    ...
    Probleme : à la réception la premiere partie du message (code) est ok, mais la partie correspondant à msgSize est à 0 et celle de msg est vide...
    Quelqu'un aurait une idée de la cause ?

    Merci d'avance.

  2. #2
    Expert confirmé

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Par défaut
    Citation Envoyé par ganlhi
    Probleme : à la réception la premiere partie du message (code) est ok, mais la partie correspondant à msgSize est à 0 et celle de msg est vide...
    Quelqu'un aurait une idée de la cause ?

    Merci d'avance.
    Bonjour,

    Il faudrait le code de réception et encore mieux, un code minimal et compilable qui montre le problème. Cela nous permettra de bien voir où se trouve le problème.

    Ensuite, pour un programme qui veut envoyer des messages, il vaut mieux utiliser les fonctions SDLNet_Read32 et SDLNet_Write32.

    Jc

Discussions similaires

  1. Probleme de transmission de parametre
    Par haraelendil dans le forum Qt
    Réponses: 6
    Dernier message: 02/04/2008, 01h40
  2. sockets probleme pour transmissions de donnée
    Par sebatlante dans le forum Réseau
    Réponses: 11
    Dernier message: 23/08/2007, 12h02
  3. Probleme de transmission de sessions
    Par Malibu31 dans le forum IIS
    Réponses: 1
    Dernier message: 16/09/2006, 19h56
  4. Réponses: 4
    Dernier message: 05/06/2006, 09h28
  5. Probleme de transmission de paramètres :(
    Par scaleo dans le forum Web
    Réponses: 19
    Dernier message: 20/09/2005, 16h09

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