WSAGetLastError et fonction Connect(...) pour socket

WSAGetLastError et fonction Connect(...) pour socket - C++ - Programmation

Marsh Posté le 03-03-2003 à 13:18:19    

Voila la ligne de code qui pose probleme
 
if((ret=connect(s,(LPSOCKADDR)&gw_addr, sizeof(gw_addr)))==SOCKET_ERROR)
{
   affichage de WSAGetLastError();
}  
 
a l'affichage de WSAGetLastError, je vois qu'il vaut 120.
 
Est ce que quelqu'un sait ce que signifie ce code d'erreur?


Message édité par polo021 le 03-03-2003 à 14:04:43
Reply

Marsh Posté le 03-03-2003 à 13:18:19   

Reply

Marsh Posté le 03-03-2003 à 13:25:45    

Tu peux  utiliser ça, que j'ai écris :  
 

Code :
  1. void erreur(int code)
  2. {
  3.     CString ErrorMessage;
  4. FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM,NULL,code,NULL,ErrorMessage.GetBuffer(255),255,NULL);
  5. ErrorMessage.ReleaseBuffer();
  6. AfxMessageBox(ErrorMessage);
  7. WSACleanup();
  8. }

Reply

Marsh Posté le 05-03-2003 à 09:14:20    

Merci ca fonctionne. Juste une question supplementaire :
 
 

Kyle_Katarn a écrit :

Tu peux  utiliser ça, que j'ai écris :  
 

Code :
  1. WSACleanup();




 
Quelle est l'utilite du WSACleanup() ici?
C'est pas pour les sockets ca, ou alors on s'en sert aussi pour AfxMessageBox?


Message édité par polo021 le 05-03-2003 à 09:15:24
Reply

Marsh Posté le 05-03-2003 à 10:04:04    

Si WSACleanUp() c'est pour les sockets, cette fonction focntionne avec WSAStartUp, elle sert à "désinitialiser" les sockets.
C'est comme un fichier, on l'ouvre avec open et on le ferme avec close...


Message édité par antsite le 05-03-2003 à 10:04:37
Reply

Marsh Posté le 05-03-2003 à 16:18:19    

C'est bien ce qu'il me semblait donc ca n'a rien a faire dans la fonction "erreur". A moins qu'on ne veuilles desinitialiser Winsock mais ce n'est pas le but de cette fonction.

Reply

Marsh Posté le 05-03-2003 à 16:29:26    

Dans mon soft quand il y a une erreur je quitte mon Thread, donc mettre ça dans erreur à un sens.
 
Dans l'absolu ça n'en a pas mais il faut adapter le code ... pas dur.

Reply

Marsh Posté le 05-03-2003 à 16:34:05    

J'avais bien compris, je voulais juste etre sur.  
Une question plus pertinente cette fois consisterai a dire :  
Pourquoi releasebuffer?
Parce que meme sans, ca fonctionne et le releasebuffer est utilise generalement apres un appel a getbuffer, non?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed