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 :

Problème d'envoie de text avec les sockets


Sujet :

Web & réseau Delphi

  1. #1
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut Problème d'envoie de text avec les sockets
    J'utilise les composants Tclientsocket et Tserversocket pour mon tchat

    J'ai décidé de créer une option pour transféré des textes, mais j'ai un prob :

    lorsque le texte est petit, tout est niquel le client le reçoit bien, mais lorsqu'il est trop long et bien ça plante et je ne reçoit pas tout :/

    l'envoie (du server au client) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ServerSocket1.Socket.Connections[0].SendText('3'+memo1.Text);
    la réception (dans le client) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var
     st,st2: string;
     
     if (st[1]='3') then
    begin
     memo1.Text := st2;
    end;
    donc pour les petit texte (qui se trouve dans le memo1 du server) ça passe facile (le client rçoit tout)

    mais lorsque le texte est trop grand on ne reçoit pas :/

    donc la question est : comment faire en sorte que tout le texte arrive dans le memo1 du client

    merci d'avance

  2. #2
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut
    je reply car je ne le vois pas dans le forum :/

  3. #3
    Membre à l'essai
    Profil pro
    Resp
    Inscrit en
    Janvier 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Resp

    Informations forums :
    Inscription : Janvier 2005
    Messages : 13
    Points : 18
    Points
    18
    Par défaut
    Hello,

    tu dois surement recuperer en plusieurs fois le contenu de ton texte.
    Je te conseille de passer par une variable globale de type string, qui stocke au fur et a mesure les données recues, et qui, sur reception d'un retour chariot par exemple, ecrit dans le memo le contenu de cette variable et l'initialise a chaine vide juste derriere...


    ++
    N'K

  4. #4
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    J'ai déja expliqué tout ça dans d'autres posts du forum, lance une recherche...
    Bidouilleuse Delphi

  5. #5
    Débutant
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    886
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 886
    Points : 330
    Points
    330
    Par défaut
    après réflexion je pense qu'il faut :

    enregistrer le contenu du memo dans une variable string

    il faut envoyer par "coupure" au server, jusqu'à ce qu'il ne reste plus rien

    mais je ne suis pas très fort et je block un peu

    qqun peux m'aider avec du code svp ?

  6. #6
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    As tu vérifié tes nouveaux messages ? Je t'ai envoyé une réponse en date du 1er septembre
    Bidouilleuse Delphi

  7. #7
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Salut,

    Donc,, tu peux trouver des explications là :
    http://www.developpez.net/forums/vie...187&highlight=

    et ici, un exemple d'utilisation de composant gratuits:
    http://www.developpez.net/forums/vie...109&highlight=

    que tu trouveras ici :
    http://www.torry.net/pages.php?id=220

    Sinon, à partir de ces composant j'en ai crée des améliorés que j'utilse très très souvent au boulot, TRES faciles à utiliser pour un chat, ne plantent jamais, avec des exemples d'utilisation et tout et tout, si tu as un mail je te les poste...
    Bidouilleuse Delphi

Discussions similaires

  1. Réponses: 7
    Dernier message: 20/03/2013, 15h49
  2. problèmes avec les sockets
    Par lukbutor dans le forum Réseau
    Réponses: 24
    Dernier message: 23/04/2007, 01h12
  3. Problème avec les sockets
    Par projeticq dans le forum Réseau
    Réponses: 14
    Dernier message: 19/04/2007, 09h32
  4. Problème avec les sockets et la fonction accept
    Par projeticq dans le forum Réseau
    Réponses: 6
    Dernier message: 13/04/2007, 11h37
  5. [Win32] Problème avec les sockets
    Par mickael777 dans le forum MFC
    Réponses: 3
    Dernier message: 12/08/2005, 11h15

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