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 :

[Indy 9] Streams


Sujet :

Web & réseau Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 68
    Par défaut [Indy 9] Streams
    Voila j'ai fait une application client/serveur TCP avec Indy, et quand je reçois un stream, je ne peut rien faire avec tant que le client distant ne s'est pas déconnecté, étrange

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm1.tcpExecute(AThread: TIdPeerThread);
    begin
    stream:= tmemorystream.Create;
    athread.Connection.ReadStream(stream, -1, true);//le code se suspend ici
    WaveStream.Seek(0, soFromBeginning);
    Où est l'erreur? Merci de votre aide.

  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
    Tu appelles ReadStream avec des paramètres qui demandent à Indy de lire un flux jusqu'à la déconnexion client (voir le prototype de la fonction que tu appelles).

    Pour recevoir "proprement" un flux, il vaut mieux recevoir d'abord la taille du stream, envoyée par le client, puis appeller ReadStream avec le nombre d'octets précédemment reçus.

  3. #3
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 68
    Par défaut
    Merci de ta réponse.

    Impossible de compiler, j'ai une erreur :
    [Erreur Fatale] Impossible de créer le fichier de sortie C:\***

  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
    Ton projet "compiles" bien, seulement la génération du fichier de sortie n'est pas possible. Probablement car ton application est déjà en fonctionnement au moment de la compilation (à vérifier avec un Ctrl+Alt+Suppr).

  5. #5
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    68
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 68
    Par défaut
    Merci, ça marche à la perfection !

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

Discussions similaires

  1. Indy 10 TCPClient - read stream et ligne mélangée....
    Par cmarcx dans le forum Web & réseau
    Réponses: 17
    Dernier message: 20/03/2006, 09h36
  2. DirectSound et le streaming
    Par Shakram dans le forum DirectX
    Réponses: 57
    Dernier message: 09/06/2005, 11h05
  3. Réponses: 3
    Dernier message: 26/07/2002, 23h02
  4. [Kylix] indy sur kylix? pb :-(
    Par NicoLinux dans le forum EDI
    Réponses: 7
    Dernier message: 15/05/2002, 23h32
  5. [Kylix] Runtime error 230 avec INDY
    Par Anonymous dans le forum EDI
    Réponses: 2
    Dernier message: 23/03/2002, 11h51

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