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

Réseau C Discussion :

fermeture et ouverture d'une socket toujours sur un meme por


Sujet :

Réseau C

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 189
    Points : 60
    Points
    60
    Par défaut fermeture et ouverture d'une socket toujours sur un meme por
    Hello !
    j'ai un p'tit problème de socket... En fait dans une boucle while j'ouvre une socket (j'effectue mes actions souhaités sans problèmes) puis je la ferme....
    A la première itération, ma socket a le port que je souhaite...
    Par contre à la 2° itération, mon port devient 0, alors que je veux recréer sur le port de départ !
    J'ai essayé de mettre la création une seule fois à l'extérieur de ma boucle while, mais alors j'ai une erreur du type: "transport endpoint already connect"

    Voici mon code:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    while(bool)
    	{	
    		int elu=-1;
     
    		char bloc[10] ;
    		int continu=1 ;
     
    		int sTCP = createBindInetSocketTCP(SOCK_STREAM,port) ;		
     
    ...........
     
     
    		}
     
    	//on passe en tcp pour le téléchargement du bloc.
    		if (elu==-1) { close(sTCP) ; bool=0 ;  }
    		else
    		if (connect(sTCP, (struct sockaddr*)reponse, sizeof (struct sockaddr_in))<0)
     
    .............
     
    			close(sTCP);
     
    ...........
     
     
    		}
     
    	}

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    quel OS ?
    Si tu es sous Windows, close() ne marche pas sur un socket: Il faut utiliser closesocket().
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 189
    Points : 60
    Points
    60
    Par défaut
    non non on est sous linux ...

Discussions similaires

  1. Réponses: 4
    Dernier message: 14/01/2013, 11h24
  2. Ouverture d'une console DOS sur Eclipse
    Par Snaval dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 10/10/2010, 09h20
  3. Ouverture d'une Socket sur VB6
    Par makia42 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 22/02/2010, 17h23
  4. Ouverture d'une aide JHelp sur une page précise
    Par Katzy dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 30/01/2008, 17h39
  5. Ouverture d'une session PHP sur le seveur d'amen.fr
    Par xmedia dans le forum Autres hébergeurs
    Réponses: 2
    Dernier message: 10/08/2007, 22h35

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