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

Web & réseau Delphi Discussion :

Client TCp Indy Buffer de réception


Sujet :

Web & réseau Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de coax81
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 180
    Par défaut Client TCp Indy Buffer de réception
    Bonjour ,

    je doit créer une appli client TCp , j'utilise les Compos INDY , et je vois que dans le thread de lecture , il faut spécifier la tailler du buffer à lire ....
    mais si on ne sais pas à l'avance la taille du message recu !!!
    est ce que c'est juste la taille max de lecture?

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 685
    Par défaut
    mais si on ne sais pas à l'avance la taille du message recu !!!
    Dans ce cas il faut revoir ton protocole pour que :

    1. Il te transmette avant un message la taille de celui-ci,
    ou :
    2. Les messages soient séparés par un caractère référence (saut de ligne ou autre), Indy pouvant lire jusqu'à qu'un certain caractère soit recu.

  3. #3
    Membre confirmé Avatar de coax81
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 180
    Par défaut
    merci .
    en fait je reçoit des trames d'une machine . et la taille varie selon que j'ai une erreur ou non .

    donc j'ai fait un tableau de 255 byte que je remplit à chaque réception , puis je traite l'information reçue .

    j'ai voulu remplir l'information reçue directement dans un record ... est ce que un record est vu comme une case memoir comme les tableau avec plusieurs champs de types différents , ou bien comme plusiseurs cases mémoirs pour chaque chams ?

    car j'ai fait un test avec un client et un serveur d'exemple ... et j'ai remarqué que quand j'envoi un record , le serveur ne recoit que le premier champs du record ...

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    685
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 685
    Par défaut
    j'ai voulu remplir l'information reçue directement dans un record ... est ce que un record est vu comme une case memoir comme les tableau avec plusieurs champs de types différents , ou bien comme plusiseurs cases mémoirs pour chaque chams ?
    Un enregistrement est vu comme l'agglomération de divers champs contigus en mémoire. Il peut donc être traité comme une "case mémoire" unique. Néanmoins, selon les options du compilateur, ce dernier va tenter d'aligner les champs sur des frontière de la mémoire pour améliorer la performance d'accès aux champs. Donc, il est possible que des octets d'alignement non exploitables soient insérés entre les champs à ce but, ce qui peut perturber ta lecture : utilises le mot clé "packed record" dans ta déclaration pour supprimer ceux-ci.

  5. #5
    Membre confirmé Avatar de coax81
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    180
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 180
    Par défaut
    Cool , merci pour l'explication

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

Discussions similaires

  1. Probleme Tache Serveur et Client TCP Linux Embarque
    Par FabienpERRIN dans le forum Réseau
    Réponses: 1
    Dernier message: 30/07/2007, 11h53
  2. [Delphi 2006 .NET] Client TCP
    Par Griswold dans le forum Delphi .NET
    Réponses: 1
    Dernier message: 06/06/2006, 23h32
  3. buffer de réception avec TComport
    Par yoyo72 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 31/08/2005, 21h28
  4. Client Tcp/ Serveur TCP
    Par Phébus dans le forum Web & réseau
    Réponses: 2
    Dernier message: 21/07/2005, 16h35
  5. Réponses: 6
    Dernier message: 11/01/2005, 12h49

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