begin process at 2012 05 28 08:51:47
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Linux

 > 

Réseau & Internet

 > 

Client serveur


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Client serveur

mercredi 19 juillet 2006 à 13:36:47 | Client serveur

fanch314

Je que le serveur et le client échange par internet.

Le serveur ne voit pas de client connecté

Et le buffer du client contient nimporte quoi.
En gros ils ne se connecte pas.

Je pense que le probleme vient de ladresse IP ou du port...

SERVEUR:

#include <winsock2.h>//winsock.h
#include <stdio.h>
#include <stdlib.h>
#pragma comment(lib, "ws2_32.lib")//wsock32.lib
void main()
{
int sinsize;
WSADATA WSAData;
WSAStartup(MAKEWORD(2,0), &WSAData);//MAKEWORD(1,0)


SOCKET sock;
SOCKET csock;
SOCKADDR_IN sin;
SOCKADDR_IN csin;

sock = socket(AF_INET,SOCK_STREAM,0);
sin.sin_addr.s_addr = INADDR_ANY;//htonl(INADDR_ANY);
sin.sin_family  = AF_INET;
sin.sin_port  = htons(80);//23 ou 7000 ou 80
bind(sock, (SOCKADDR *)&sin, sizeof(sin));
listen(sock, 0);
puts("pret");

while(1)
{
sinsize = sizeof(csin);
if((csock = accept(sock, (SOCKADDR *)&csin, &sinsize)) != INVALID_SOCKET)
{
puts("un socket s'est connecté");
send(csock, "Hello World!\r\n", 14, 0);
}
}


puts("FIN");
}

CLIENT:
#include <winsock2.h>//winsock.h
#include <stdio.h>
#include <stdlib.h>
#pragma comment(lib, "ws2_32.lib")//wsock32.lib
void main()
{
WSADATA WSAData;
WSAStartup(MAKEWORD(2,0), &WSAData);//MAKEWORD(1,0)

char *buffer = new char[255];

SOCKET sock;
SOCKADDR_IN sin;
sock = socket(AF_INET,SOCK_STREAM,0);
sin.sin_addr.s_addr = inet_addr("212.234.59.105:80");//212.234.59.105
sin.sin_family  = AF_INET;
sin.sin_port  = htons(80);//6667 ou 7000 ou 80

connect(sock, (SOCKADDR *)&sin, sizeof(sin));


recv(sock, buffer, sizeof(buffer), 0);

printf("%s\n",buffer);

closesocket(sock);
WSACleanup();
puts("FIN");
system("PAUSE");
}



mercredi 19 juillet 2006 à 14:03:21 | Re : Client serveur

wxccxw

Membre Club
un truc que je ne comprends pas, c'est :
que tu a poster ton post dans la categori LINUX et que tu utilise Winsock :)


mercredi 19 juillet 2006 à 14:13:04 | Re : Client serveur

aardman

Membre Club
Salut,
Comme d'hab, sans traitement/affichage d'erreur, c'est difficile de debuguer un prog.
jeudi 20 juillet 2006 à 05:24:49 | Re : Client serveur

maladedede

Membre Club
Si recv() renvoi la valeur -1 c'est que ton prog n'est pas connecté au serveur.
et comme buffer n'est pas initialisé et qu'il recoi rien c'est normale que c'a affiche n'importe quoi( car la plage memoir qu'il lui est attribué contient ce quel est depuis avant le lancement du prog).

int verif=999;
if(connect(sock, (SOCKADDR *)&sin, sizeof(sin)))
{
  verif = recv(sock, buffer, sizeof(buffer), 0);
  printf("Connecté ou pas:%d %s\n", verif, buffer);
}
printf("Connecté ou pas: %d", verif);


1/1MaLaDeDeDe 97one1/1 

mardi 24 octobre 2006 à 01:22:30 | Re : Client serveur

xtremejames183

Un bon truc pour bien gerer les erreurs c evidamment d'inclure errno pour la gestion
des bonne vielles erreur:
#include <errno.h>

if(    (sock=socket(AF_INET,SOCK_STREAM,0)<0)
             perror("Socket");

if(    (host=gethostbyname(hostname)    )==NULL)
               herror("DNS");
//pour la gestion d'erreur dns

A+


Cette discussion est classée dans : client, include, socket, sin, sock


Répondre à ce message

Sujets en rapport avec ce message

Probleme de Client Serveur [ par Krox68 ] voila jaimerais faire un programme client qui puisse se connecter a ce serveur : #include void main(){ WSADATA WSAData; WSAStartup(MAKEWORD(2,0), &WS client serveur [ par elanspeech ] Bonjour,Je suis en train de programmer un petit client serveur en C pour windows avec dev-c++. J'obtiens l'erreur suivante a la compilation : D:\DEV-C Client/Serveur, encore..... [ par glubust ] Je veux faire fonctionner une application client/serveur sous UNIX (client) et WINDOWS (serveur).Le programme client envoi une simple requête au serve [C] Scanner de port utilise socket version linux [ par firemax ] Salut :) J'ai une erreur de segmentation et je n'est pas la moindre idée d'ou ca peut venir :( Je n'est aucun warning lors de la compilation mais l [socket et api win]recevoir et envoyer en meme temps [ par shadow1779 ] Bonjour je me suis fais un petit programme irc qui me servira de bot pour auto-op des personne ou d'autre taches diverses, le client aura une boite de Socket C et api [ par shadow1779 ] Bonjour,j'ai un petit prob avec un bot que j'essai de faire avec l'api et les sockets en C, pour l'instant on ne peux que cliquer sur le bouton connec pb de compilation (prog utilisant un socket) [ par smook ] boujour a tous bon je vais commencer part bien vous detailler ce qui a detailler : j utilise dev c++ 4.9.9.2 et mon ^programme a pour but d ecouter un probleme de communication entre deux programme [ par smook ] re salut le dernier message que j ai poster c etait pour les socket et la librairie "libwsock.a" mais sayer j ai passer cette etape j ai reussi a fair Problème d'IP Client avec les winsock [ par Cphil51 ] Boujour a tous.Je m'interesse en ce moment aux socket sous windows et j'ai un petit probleme actuellement. J'aimerais savoir comment récupérer l'IP d' Problème de connexion Socket [ par qhhu ] Bonjour !En temp normal, je programme en java, mais j'ai voulu essayer le c++parce que je trouve que c'est interessant de connaître plusieurs language


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,934 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales