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 :

Quel type de donnée peut on envoyé avec une socket ?


Sujet :

Réseau C

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 31
    Points : 20
    Points
    20
    Par défaut Quel type de donnée peut on envoyé avec une socket ?
    Bonjour,


    Je suis entrain de réaliser un client/serveur en C, afin de pouvoir contrôler un robot à distance. J'ai implémenter un interface gtk dans lequel je fais un streaming video de la webcam du robot.

    Donc je voudrais savoir si il était possible d'envoyé depuis mon robot (serveur) des données de type "gdk_pixbuff" ou bien faut il passé par un autre format ?


    Je vous remercie d'avance de vos réponses.

  2. #2
    Membre émérite
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Points : 2 724
    Points
    2 724
    Billets dans le blog
    1
    Par défaut
    La magie des solet c'est que tu peux passer tout et n'importe quoi a travers du moment que tu sais comment le receptionner de l'autre coter.

    par exemple tu peux envoyer toute une structure ou n'importe quel type de donnee en creant un pointeur pour recuperer de l'autre coter:

    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
     
    struct s_test
    {
      int toto;
      int titi;
      char car;
      double bobby;
    };
     
    void envoi()
    {
      struct s_test tesdonnees;
      send(tasocket, &tesdonnees, sizeof(tesdonnees),0);
    }
     
    void receive()
    {
      struct s_test tesdonnees;
      recv(tasocket, &tesdonnees, sizeof(tesdonnees),0);
    }
    conclusion, tu peux envoyer ce que tu veux du moment que tu connais la taille de ce que tu envoi

  3. #3
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    J'aurai mis le même code qu'envoi dans receive mais avec juste read à la place de write. Dans le code actuel, tesdonnees n'est pas initialisé dans receive donc le code n'est pas bon. Et utiliser read/write sur un socket ne marche que sous linux et autres systèmes type unix. Pour être portable il faut utiliser recv/send.

  4. #4
    Membre émérite
    Avatar de skeud
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 1 091
    Points : 2 724
    Points
    2 724
    Billets dans le blog
    1
    Par défaut
    exact, j'ai oublier de mettre le malloc, mais effectivement, en statique sa fonctionne aussi

    Pour le recv et sendv, j'ai tellement l'habitude de coder sous linux que je m'en rappellais meme plus honte a moi ^^ je vais editer mon post pour corriger tout sa

  5. #5
    Membre à l'essai
    Inscrit en
    Janvier 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 31
    Points : 20
    Points
    20
    Par défaut
    Ok Skeud merci.

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

Discussions similaires

  1. quel type de donné renvoie un socket
    Par sneb5757 dans le forum Développement
    Réponses: 4
    Dernier message: 18/11/2006, 18h06
  2. Réponses: 15
    Dernier message: 07/07/2006, 16h30
  3. Champ PRIX : quel type de donnée ?
    Par Ant8386 dans le forum Oracle
    Réponses: 3
    Dernier message: 28/06/2006, 16h05
  4. Réponses: 6
    Dernier message: 26/04/2006, 15h13
  5. Réponses: 0
    Dernier message: 26/04/2006, 13h01

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