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 :

Socket send array de byte


Sujet :

Réseau C

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Janvier 2006
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Socket send array de byte
    Bonjour ! Y-a-t-il un moyen de passer un array de byte au lieu de passe du char * lors du send via un socket. C'est que j'ai une structure de transaction qui a un short int et un array de byte. Je voudrais envoyer cette structure a mon socket. Quelqu'un a une idée ??

    Merci à l'avance

  2. #2
    Membre du Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Août 2007
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Août 2007
    Messages : 52
    Points : 53
    Points
    53
    Par défaut
    Par une socket tu ne peux envoyer que des "messages" c'est à dire des char*.
    Ensuite tu as une notion de protocole qui explique comment coder/décoder les messages. Ce que tu peux faire c'est

    - coder le nombre de byte sur les 2er char
    - Coder tes bytes 8 à 8 sur les octets suivant (ex 10011001 pour 1er byte à 1, seconde à 0, suivant à 0 ...)

    Pour décoder tu fait l'inverse en utilisant le nombre pour connaitre le nombre de byte.

  3. #3
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par miss11 Voir le message
    Bonjour ! Y-a-t-il un moyen de passer un array de byte au lieu de passe du char * lors du send via un socket. C'est que j'ai une structure de transaction qui a un short int et un array de byte. Je voudrais envoyer cette structure a mon socket. Quelqu'un a une idée ??
    La problèmatique est la même qu'avec un fichier. D'une façon générale, il s'agit d'établir un 'flux d'octets' entre 2 machines.

    Tu es libre de mettre ce que tu veux dans les octets. Cependant, il y a des précautions à prendre pour que la signification des octets soit la même coté émetteur et coté récepteur. Pour cela, il y a 3 façons de procéder :
    • Le mapping binaire direct : facile, mais pas du tout portable.
    • Le codage en texte (généralement ASCII, donc très portable et assez simple à mettre en oeuvre)
    • Le codage binaire indépendant (BER, XDR etc.) : Très portable, mais complexe.

  4. #4
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Mizar75 Voir le message
    Par une socket tu ne peux envoyer que des "messages" c'est à dire des char*.
    Euh, non, pas du tout... L'interface est de type adresse (non typée) / longueur...

    http://www.opengroup.org/onlinepubs/...ions/send.html
    http://www.opengroup.org/onlinepubs/...ions/recv.html

Discussions similaires

  1. socket send renvoi toujours (-1)
    Par tkwebch dans le forum Réseau
    Réponses: 8
    Dernier message: 30/08/2006, 17h24
  2. [Socket] Send/Recv type double sur architectures différentes
    Par nicolas.pied dans le forum Réseau
    Réponses: 4
    Dernier message: 31/03/2006, 20h33
  3. Réponses: 5
    Dernier message: 18/11/2005, 22h11
  4. [Array][String]byte[]
    Par beb-mbs dans le forum Entrée/Sortie
    Réponses: 12
    Dernier message: 25/08/2005, 06h16
  5. [Type] alternative a "array of byte"
    Par Clorish dans le forum Langage
    Réponses: 2
    Dernier message: 12/07/2005, 11h59

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