1/5 (14 avis)
Vue 15 995 fois - Téléchargée 928 fois
// client simple #include "winsock2.h" #pragma comment(lib, "ws2_32.lib") #include <stdio.h> #include <stdlib.h> #include <string.h> #include <windows.h> #include <iostream.h> char *bufferRecv = new char[800]; char *bufferSend = new char[800]; int rec; #define IP "XXX.XXX.XXX.XXX" #define PORT 1000 main() { printf(" -=[ Client ]=-\n\n"); WSADATA WSAData; WSAStartup(MAKEWORD(2,0), &WSAData); SOCKET sock; SOCKADDR_IN sin; sock = socket(AF_INET, SOCK_STREAM, 0); sin.sin_addr.s_addr = inet_addr(IP); sin.sin_family = AF_INET; sin.sin_port = htons(PORT); connect(sock, (SOCKADDR *)&sin, sizeof(sin)); do { scanf ("%s",bufferSend); send(sock, bufferSend, strlen(bufferSend), 0); if ((rec = recv (sock, bufferRecv, 64*sizeof(char), 0)) != SOCKET_ERROR) { bufferRecv[rec] = '\0'; printf("\n%s\n",bufferRecv); } } while (rec > 0); } //////////////////////////////////////////////////////////////////////////////// // serveur simple #include "winsock2.h" #pragma comment(lib, "ws2_32.lib") #include <stdio.h> #include <stdlib.h> #include <string.h> #include <windows.h> #include <iostream.h> char *bufferRecv = new char[800]; char *bufferSend = new char[800]; int rec; #define PORT 1000 main() { printf(" -=[ Serveur ]=-\n\n"); WSADATA WSAData; WSAStartup(MAKEWORD(2,0), &WSAData); SOCKET sock; SOCKET csock; SOCKADDR_IN sin; SOCKADDR_IN csin; sock = socket(AF_INET, SOCK_STREAM, 0); sin.sin_addr.s_addr = INADDR_ANY; sin.sin_family = AF_INET; sin.sin_port = htons(PORT); bind(sock, (SOCKADDR *)&sin, sizeof(sin)); listen(sock, 0); int sinsize = sizeof(csin); sock = accept(sock, (SOCKADDR *)&csin, &sinsize); do { scanf ("%s",bufferSend); send(sock, bufferSend, strlen(bufferSend), 0); if ((rec = recv (sock, bufferRecv, 64*sizeof(char), 0)) != SOCKET_ERROR) { bufferRecv[rec] = '\0'; printf("\n%s\n",bufferRecv); } } while (rec > 0); }
9 avril 2005 à 18:46
9 avril 2005 à 18:33
merci
9 avril 2005 à 18:11
également, le client ainsi que le serveur doivent attendre d'écrire et d'envoyer pour que le message reçu precedemment s'affiche
merci de me répondre
15 août 2004 à 02:00
et bonne programmation @U;
26 déc. 2003 à 22:23
C koi la différence avec les stream et les raws paquet ?
Ensuite, peut on envoyer d'aures types de données (struct ...) ?
Et doit on mettre plus de données moins vite ou moins de données plus vite pour un même résultat ou cela dépend de la fonction qui extrait les données ?
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.