Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
678 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Connect et Errno se contredisent !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Connect et Errno se contredisent !

n°1028046
DMSilencer
Posté le 29-03-2005 à 09:11:56  profilanswer
 

bonjour,
 
Sous environnement XP Pro, pour faire un embryon de serveur.. (je fais mes premiers pas) :
 
Sous Dev-C++, en voulant créer un socket (débutant), connect me renvoie -1 donc problème.
 
Je teste errno qui lui me renvoie 0 : pas de problème !!!
 
 
Et ca ne fonctionne pas...
 
 
Quelqu'un a une idée ?
 
Merci

mood
Publicité
Posté le 29-03-2005 à 09:11:56  profilanswer
 

n°1028048
IrmatDen
Posté le 29-03-2005 à 09:15:03  profilanswer
 

salut,
peux-tu poster ton code stp ?

n°1028063
DMSilencer
Posté le 29-03-2005 à 09:36:05  profilanswer
 

J'allais justement le faire ! ;-)
Attention c'est du B-A BA, ca fait longtemps que je n'ai plus programmé alors j'y vais par petites touches.
 
#include <iostream>
#include <process.h>
#include <stdlib.h>
#include <errno.h>
 
#include <winsock2.h>
 
int main (int argc, char *argv[])
{  
  WSADATA WSAData;
  WSAStartup(MAKEWORD(2,0), &WSAData);
  SOCKET sock;
  SOCKET csock;
  SOCKADDR_IN sin;
  int i=22;
  char buffer [20];
  int Erreur;
 
  sock = socket(AF_INET, SOCK_STREAM, 0);
   
  CodeErreur(errno);
   
  sin.sin_addr.s_addr   = inet_addr("1999.12.261.1" );
  //sin.sin_addr.s_addr   = htonl(INADDR_ANY );
  sin.sin_family    = AF_INET;
//  sin.sin_port    = htons(3490);
  sin.sin_port    = htons(0);
  //bind(sock, (SOCKADDR *)&sin, sizeof(sin));
 
  memset(&(sin.sin_zero), '\0', 8);  
   
  if (connect(sock, (SOCKADDR *)&sin, sizeof(sin)) == SOCKET_ERROR )
  {
    CodeErreur(errno);
  }
et... (la suite n'est pas importante).
 
 
CodeErreur affiche simplement le message correspondant au code de l'erreur.
L'adresse IP est volontairement du n'importe quoi : errno renvoie quand même 0 !
Avec une IP correcte etc.. ca ne fonctionne pas et toujours 0 pour errno.
 
Merci !

n°1028123
DMSilencer
Posté le 29-03-2005 à 11:16:32  profilanswer
 

Ca marche !!
En utilisant SOCK_DGRAM qui ne demande pas un socket demandeur (serveur).
 
Ca n'explique pas pourquoi je n'ai pas de code d'erreur avec errno.. Ou alors ce n'est pas prévu..


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Connect et Errno se contredisent !

 

Sujets relatifs
Faire 2 mysql_connect sur la meme page et sur la meme base ?[access] info sur tabdefs("nom_table").connect
Socket: connaître l'adresse ip du client qui se connect à un serveurconnection odbc_connect
Socket : la fonction connect.fonction mysql_connect [RESOLU]
p'ti prog qui se connect a un serveur ftp marche pasprogramme C# erreur :Unable to connect to any hosts....
Comment ca marche le mysql_connect ?DataSource : Cannot create JDBC driver of class '' for connect URL '
Plus de sujets relatifs à : Connect et Errno se contredisent !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR