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

C++Builder Discussion :

Envoi d'une valeur par socket


Sujet :

C++Builder

  1. #1
    Membre régulier Avatar de bibom
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 77
    Points
    77
    Par défaut Envoi d'une valeur par socket
    Bonjour à tous

    J'utilise ces 2 composants : ClientSocket et ServerSocket
    Je voudrais envoyer une donnée par Socket.
    Pour la connexion tout va bien et mes 2 applis communiquent bien.
    ma valeur a envoyer est une donnée hexadecimal par exemple 0x1F
    J'aimerais donc savoir comment je peux envoyer cette valeur

    merci

  2. #2
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Pour envoyer des données, il faut que tu regarde les methodes SendBuf, SendStream, SendStreamThenDrop, et SendText du Socket, chaque composant socket a un ou plusieurs socket (le client : 1, le serveur : autant que de client connecté) pour lire un message recu tu regarde les evenements OnRead (client) et OnClientRead (serveur) et dans ces évenement tu peut lire avec les fonctions Read, ReceiveBuf, ReceiveLength, et ReceiveText du Socket passé en argument aux évenement prècedemment cité.

    J'éspere que tu as tout compris, sinon fait moi signe.

  3. #3
    Membre régulier Avatar de bibom
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 77
    Points
    77
    Par défaut
    Merci pour ta réponse

    Le probleme c'est que je n'arrive pas à appliquer les methode SendBuf, SendStream ou SendStreamThenDrop (SendText envoyant une chaine de caractere ce n'est pas ce qu'il me faut).
    Pourrais tu m'éclairer sur l'utilisation de ces methodes ainsi que la manière de recevoir via mon ServerSocket ensuite.

    Merci d'avance

  4. #4
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    il suffit de mettre ce code ci au niveau client à l'emplavement ou tu veut :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    char * donnee ;
    donnee = new char ;
    donnee = 0x1F ;
    ClientSocket1->Socket->SendBuf(donnee, 1) ;
    delete donnee ;
    et dans ton serveur sur l'evenement OnClientRead :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    char * donnee ;
    donnee = new char ;
    Socket->ReceiveBuf(donnee, 1);
    ShowMessage(donnee) ;
    delete donnee ;

  5. #5
    Membre régulier Avatar de bibom
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 77
    Points
    77
    Par défaut
    Merci c'est exactement ce que je cherchais.
    Mon seul souci c'est que quand je sonde ma trame je vois qu'il m'envoi la valeur 2C et non pas mon 1F.
    Pourtant je recois bien qu'un octet.

    Encore merci

  6. #6
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Essaye de lire plusieurs octets, peut etre qu'il reste des valeurs dans le socket ou un truc bizard comme ca, ca arrive

  7. #7
    Membre régulier Avatar de bibom
    Étudiant
    Inscrit en
    Juin 2005
    Messages
    83
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2005
    Messages : 83
    Points : 77
    Points
    77
    Par défaut
    c'est bon j'ai trouvé
    Je n'envoyais pas la bonne valeur de mon tableau
    Merci encore pour ton aide

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

Discussions similaires

  1. [C#] Envoi d'une structure par un(e) socket
    Par joprog dans le forum Windows Forms
    Réponses: 2
    Dernier message: 02/03/2007, 11h29
  2. afficher une valeur par défault dans la combobox
    Par shadow31 dans le forum MFC
    Réponses: 6
    Dernier message: 09/01/2006, 17h25
  3. [dblookup] afficher une valeur par programmation
    Par let_me_in dans le forum Bases de données
    Réponses: 1
    Dernier message: 11/05/2005, 14h42
  4. Ouverture de connexion et envoi d'un message par socket
    Par loleske dans le forum C++Builder
    Réponses: 3
    Dernier message: 10/02/2005, 12h52
  5. [scriplet] affecter une valeur par un bean:write
    Par viena dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 25/11/2004, 16h29

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