/*--------------------------------------client.c--------------------------------*/ #include #include #include int main(int argc, char* argv[]) { WSADATA wsaData; int res,my_socket; char *adresse = "127.0.0.1"; struct sockaddr_in adresse_socket; int receive, envoie; char *chaine="bonjour je veux le fichier serveur.c\n"; char Buffer[64]; char ligne[255]; FILE *pf; if((res = WSAStartup(MAKEWORD(2,0), &wsaData))!= 0){ printf("VOIR LA FONCTION WSAStartup.\n"); exit(1);} if((my_socket=socket(AF_INET, SOCK_STREAM, IPPROTO_TCP))==INVALID_SOCKET){ printf("IMPOSSIBLE DE CREER LA SOCKET DU CLIENT.\nVOIR LA FONCTION SOCKET DU CLIENT.\n"); exit(1);} memset(&adresse_socket,0x0,sizeof(adresse_socket)); adresse_socket.sin_family = AF_INET; adresse_socket.sin_port = htons(3399); adresse_socket.sin_addr.S_un.S_addr = inet_addr(adresse); if((res = connect(my_socket,(struct sockaddr *) &adresse_socket,sizeof(adresse_socket))) != 0){ printf("IMPOSSIBLE D'ETABLIR UNE CONNEXION AVCE LA SOCKET.\n"); exit(1);} if((envoie = send(my_socket,chaine,strlen(chaine),0))!= 37){ printf("Echec de l'envoie des données !"); exit(1);} if(receive = recv(my_socket,Buffer,64,0)!= 0){ printf("Echec de reception des données !");exit(1);} if ((pf=fopen(Buffer,"r"))==NULL) { printf("ERREUR, LORS DE LA LECTURE DU FICHIER %s \n",Buffer);exit(0);} else{while(fgets(ligne,255,pf)) fputs(ligne,stdout);fclose(pf);} return 0; }