probleme completement inexplicable avec les sockets sous windows c++

probleme completement inexplicable avec les sockets sous windows c++ - C++ - Programmation

Marsh Posté le 23-05-2005 à 23:10:32    

slt !!
je debute a la programmation reseaux en c++,et afin de developpez mes capacites j'ai decide de programmer le plus simplement possible un client/serveur du chate sous dos mais le probleme c'est ke le client n'arrive pas a se connecte au svr je vous pris de m'aider les gaz svp
voici les deux codes:
[cpp]
********************le client***************************************
 
#include<iostream.h>
#include<stdio.h>
 
#include<winsock2.h>
 
#pragma comment(lib,"ws2_32.lib" )
 
void main()
{
 WSADATA wsa;
 WSAStartup(MAKEWORD(2,0),&wsa);
        char ip[20];
       cout<<"tapez l adresse ip du serveur"<<endl;
       cin>>ip;
 SOCKET sock;
 SOCKET serveur;
 
 SOCKADDR_IN option;
 option.sin_addr.s_addr=inet_addr(ip);
 option.sin_family= AF_INET;
 option.sin_port=htons(50);
 sock=socket(AF_INET,SOCK_STREAM,0);
 serveur=socket(AF_INET,SOCK_STREAM,0);
 char buff[222],buff1[222];
 while(1)
 {
 connect(sock,(SOCKADDR*)&option,sizeof(option));
 
  while(int(connect(sock,(SOCKADDR*)&option,sizeof(option)))!=INVALID_SOCKET)
  {
   cout<<"connection etablie"<<endl;
   for(;;)
   {
   cout<<"client = "<<endl;
 
   gets(buff);
   
   send(serveur,buff,sizeof(buff),0);
 
   cout<<endl;
 
   recv(sock,buff1,sizeof(buff1),0);
   cout<<endl;
   }
  }
 }
 
}
******************************le serveur**************************
#include<iostream.h>
 
#include<stdio.h>
 
#include<winsock2.h>
 
#pragma comment(lib,"ws2_32.lib" )
 
void main()
{
 
 
 WSADATA mywinsock;
 WSAStartup(MAKEWORD(2,0),&mywinsock);
 
 SOCKET sock;
 SOCKET serveur;
 
 SOCKADDR_IN option;
 SOCKADDR_IN client;
    option.sin_addr.s_addr = htonl(INADDR_ANY);
 option.sin_family=AF_INET;
 option.sin_port=htons(50);
 sock=socket(AF_INET,SOCK_STREAM,0);
 serveur=socket(AF_INET,SOCK_STREAM,0);
 bind(sock,(SOCKADDR*)&option,sizeof(option));
 int americ=sizeof(option);
 char recevoir[222];
 char envoyer[222];
 listen(sock,0);
 while(1)
 {
  accept(sock,(SOCKADDR*)&client,&americ);
        if(accept(sock,(SOCKADDR*)&client,&americ)!=INVALID_SOCKET)
  {
  cout<<"connection etablie!!"<<endl;
        while(1)
  {
  recv(serveur,recevoir,sizeof(recevoir),0);
  cout<<recevoir<<endl;
 
  gets(envoyer);
  cout<<endl;
  send(sock,envoyer,sizeof(envoyer),0);
  }
  }
}
}
*************************************************************
enfin,je vous assure ke jai essaye de le corrige mais sans resultat et merçi d'avance pour votre aide
@@+++

Reply

Marsh Posté le 23-05-2005 à 23:10:32   

Reply

Marsh Posté le 23-05-2005 à 23:16:28    

balise [ cpp] svp :o

Reply

Marsh Posté le 23-05-2005 à 23:20:19    

tu lis pas sur la bonne socket


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 23-05-2005 à 23:58:45    

mais si je lis sur la bonne socket (sock),c'est ke j'ai binde !!!!!!

Reply

Marsh Posté le 24-05-2005 à 00:11:29    

recv(serveur,recevoir,sizeof(recevoir),0);  
 
pas bonne socket, cf aide de "accept"
 
et en plus tu as deux accept, c'est pas bon


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 24-05-2005 à 00:27:54    

mais pk pas bonne socket!!!
serveur est socket ki represente le client de ki elle va recevoir les strings  
@@@+++++++++

Reply

Marsh Posté le 24-05-2005 à 00:28:22    

pas logik !!!!!!!!!!!!!

Reply

Marsh Posté le 24-05-2005 à 01:45:19    

ne trouvez pas kil n y aucune erreur dans ce prog?,n'est il pas inexplikable kil ne fonctionne pas correctement??

Reply

Marsh Posté le 24-05-2005 à 01:55:07    

j'ai teste ce malin prog avec moi meme,le norton me signale une connection je coche permit mais sans resultat et kand je le teste avec des amis,on ne constate rien comme si le client ne se connecte pas eu serveur,si klkin de vous ne me crois pas je suis pret a le tester avec lui,lui meme il va compile le serveur ou le client

Reply

Marsh Posté le 24-05-2005 à 01:56:08    

je vous ensupplie de m'aider a trouve la solution svp ctrop !!!!!!!!!!

Reply

Marsh Posté le 24-05-2005 à 01:56:08   

Reply

Marsh Posté le 24-05-2005 à 07:33:44    

Tout le monde te l'a déjà dit, tu te mélanges les pinceaux avec tes sockets ...

Reply

Marsh Posté le 24-05-2005 à 08:46:00    

toeboe a écrit :

ne trouvez pas kil n y aucune erreur dans ce prog?,n'est il pas inexplikable kil ne fonctionne pas correctement??


 
 
Il est perclu d'erreurs ton pauvre programme de merde, c'est pas inexplicable qu'il ne marche pas, c'est meme une chance qu'il deconne, ca nous prouve qu'il reste encore en ce bas monde des choses comprehensibles
 
Alors vu que t'es un peu dur de la feuille je te le redis :
 
1/ tu as deux accept => pas bon
2/ tu ne lis pas (coté serveur) sur la bonne socket => cf doc de accept
3/ (bonus) des exemples de client serveur qui marchent, y'en a plein le net
 
et arrete d'écrire comme un triso, ca saoule


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 24-05-2005 à 09:00:54    

toeboe a écrit :

mais pk pas bonne socket!!!
serveur est socket ki represente le client de ki elle va recevoir les strings  
@@@+++++++++


 

toeboe a écrit :

pas logik !!!!!!!!!!!!!


 

toeboe a écrit :

ne trouvez pas kil n y aucune erreur dans ce prog?,n'est il pas inexplikable kil ne fonctionne pas correctement??


 

toeboe a écrit :

j'ai teste ce malin prog avec moi meme,le norton me signale une connection je coche permit mais sans resultat et kand je le teste avec des amis,on ne constate rien comme si le client ne se connecte pas eu serveur,si klkin de vous ne me crois pas je suis pret a le tester avec lui,lui meme il va compile le serveur ou le client


 

toeboe a écrit :

je vous ensupplie de m'aider a trouve la solution svp ctrop !!!!!!!!!!


on t'a déja donné la réponse, tu crois pas qu'il serait temps de brancher tes neurones et de réflechir un coup ?
et tu serais gentil d'écrire correctement stp, sans ça je me verrais dans l'obligation de fermer ton topic
 


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 24-05-2005 à 11:06:15    

tout d'abord je m'execuse pour mon ecriture,meme si j'ai  
 
remplaçe recv(serveur,,)par recv(sock,,)ça na rien donne
 
en plus çe n'est pas faux d'ecrire accept()dans le while  
 
parceke j'essaye de recuper la valeur retourne par accept()  
 
sans declarer de nouveaux variable,enfin si vous avez un  
 
autre avis ke le mien essayez plus clair s'il vous plait  
@@++

Reply

Marsh Posté le 24-05-2005 à 11:42:36    

chrisbk =
1-cpas faux les deux accept()
2-je lis sur la bonne socket,tu constate pas que sock est le nom de socket que j'ai binde(coller)????
je crois que je tai explique tous monsieur chrisbk  
@@++++

Reply

Marsh Posté le 24-05-2005 à 11:49:16    

...
Bon ben chrisbk, il te reste plus qu'à le remercier...
 
Sincèrement, tu n'as même pas essayé la solution, tu n'es pas poli, tu ne fais aucun effort d'écriture (bon vu ta ville dans le profil, ça peut éventuellement s'excuser sur le fond), et tu te permets d'envoyer bouler...
 
ça donne envie de répondre tiens

Reply

Marsh Posté le 24-05-2005 à 11:58:04    

toeboe a écrit :

chrisbk =
1-cpas faux les deux accept()
2-je lis sur la bonne socket,tu constate pas que sock est le nom de socket que j'ai binde(coller)????
je crois que je tai explique tous monsieur chrisbk  
@@++++


 
 
tu comptes lire cette bondieu de doc sur "accept" un jour ou pas ?


Message édité par chrisbk le 24-05-2005 à 11:58:38

---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 24-05-2005 à 12:08:47    

je suis pret a tester avec toi monsieur chrisbk parceke je  
 
top de sur que tu ne sais pas ce ke tu dit meme en socket  
 
je crois pas ke tu sais les utiliser !!!!!!!
 

Reply

Marsh Posté le 24-05-2005 à 12:09:41    

toeboe a écrit :

chrisbk =
1-cpas faux les deux accept()


mais bien sur que si c'est faux, bougre d'étron entété !! tu acceptes la connection une fois, c'est pas pour la réaccepter une seconde fois ! dégage donc le 1er "accept" et garde celui qui est dans le if()
 

toeboe a écrit :


2-je lis sur la bonne socket,tu constate pas que sock est le nom de socket que j'ai binde(coller)????


tu lis sur la socket du client !! il faut lire sur la socket du serveur ! comme le dit chrisbk, cf doc de accept() :
http://publib.boulder.ibm.com/info [...] pc1m3j.htm
 
et tu serais gentil d'arréter de prendre les gens de haut, surtout quand tu as tout faux comme c'est le cas actuellement. ton programme est faux et archi faux, et tu te permets de la ramener et de dire à chrisbk qu'il a tort ! je pense que si des mecs comme chrisbk ou Taz ou Delahaye ou autres te disent des trucs, tu peux leur faire une confiance quasi aveugle ! alors arrête un peu ton cinéma, et comme je te l'ai dit, met les neurones en marche !


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 24-05-2005 à 12:10:26    

toeboe a écrit :

je suis pret a tester avec toi monsieur chrisbk parceke je  
 
top de sur que tu ne sais pas ce ke tu dit meme en socket  
 
je crois pas ke tu sais les utiliser !!!!!!!


un conseil, ferme là et lis mon post au dessus ! je suis à 2 doigts de te bannir là


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 24-05-2005 à 12:11:28    

meme si jen doute que tas le courrage d'accepter ce defi!!!!!!!!!!!!!!

Reply

Marsh Posté le 24-05-2005 à 12:11:59    

bon allez, télétubbies, parce que là tu m'énerves royalement


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 24-05-2005 à 12:14:21    

toeboe a écrit :

je suis pret a tester avec toi monsieur chrisbk parceke je  
 
top de sur que tu ne sais pas ce ke tu dit meme en socket  
 
je crois pas ke tu sais les utiliser !!!!!!!


 
 
bin si tu veux, en attendant mon client/serveur marche, le tiens non [:el g]
 
 
Et donc, je demandais, tu comptes lire la doc sur accept ou non ?


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 24-05-2005 à 12:15:26    

toeboe a écrit :

meme si jen doute que tas le courrage d'accepter ce defi!!!!!!!!!!!!!!


 
bah, jpense pas que je suis admissible dans les para olympiques


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 24-05-2005 à 12:23:51    

Moi je pense aussi que chrisbk sait pas utiliser les sockets :o Il fait son malin et tout mais il sait pas faire :o


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 24-05-2005 à 12:24:50    

J'avoue :/
 
c'est quoi une socket ?


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 24-05-2005 à 12:25:29    

C'est ça : http://dreamfish.org.uk/images/socket.jpg


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 24-05-2005 à 12:26:15    

ah bin c'est bien ce que je dis, il utilisait pas la bonne [:zaib3k]


---------------
NP: HTTP Error 764 Stupid coder found
Reply

Marsh Posté le 24-05-2005 à 12:31:44    

chrisbk a écrit :

J'avoue :/
 
c'est quoi une socket ?


http://www.ozinetperformancewear.com.au/pics/Sockette_2.jpg


---------------
[:whatde]
Reply

Marsh Posté le 24-05-2005 à 12:54:14    

Le coup des 2 sockets [:rofl] [:rofl][:rofl][:rofl]


Message édité par KrisCool le 24-05-2005 à 12:56:59

---------------
Loose Change Lies | Bars | Last.fm
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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