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 :

Socket non bloquant


Sujet :

Web & réseau Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 107
    Points : 41
    Points
    41
    Par défaut Socket non bloquant
    Salut


    j'ai trouvé sur le net un code qui commence par ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Begin
      Repeat
        Time.tv_sec := 120;
        Time.tv_usec := 0;
     
        FD_ZERO(FDS);
        FD_SET(Sock, FDS);
     
        If Select(0, @FDS, NIL, NIL, @TIME) <= 0 Then Break;
     
        Len := Recv(Sock, Buffer, 1600, 0);
        If (Len <= 0) Then Break;
    en fait il s'agit du code d'un serveur qui utilise Winsock

    le code marche très bien, hormis un petit problème que je trouve très embettant, en fait le socket est bloquant.

    et le problème est que toute l'interface graphique de l'application est inaccessible une fois que le serveur est connecté :s

    j'ai tenté d'utiliser ioctlsocket puisque dans la source Select n'a pas l'air de marcher, mais je n'y parviens pas


    auriez-vous une idée ?

    merci

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 464
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 464
    Points : 24 888
    Points
    24 888
    Par défaut
    déplace le code dans un Thread et échange les données via TThreadList, ou par Message ...

    Sinon, Indy, ICS, TClientSocket, plein de lib déjà écrite, voir aussi les Tuto/bouquin de Paul Toth
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. [timer & thread] timeout & socket non bloquant
    Par untipy dans le forum Réseau
    Réponses: 33
    Dernier message: 22/08/2007, 08h37
  2. socket non bloquant
    Par Mister_Don dans le forum C++
    Réponses: 18
    Dernier message: 17/08/2007, 17h57
  3. [Réseau] socket non bloquant
    Par beLz dans le forum Réseau
    Réponses: 2
    Dernier message: 28/07/2007, 15h20
  4. Réponses: 3
    Dernier message: 20/10/2006, 19h50
  5. socket non bloquante
    Par jeje99 dans le forum Réseau
    Réponses: 15
    Dernier message: 21/02/2006, 08h52

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