Bonjour tout le monde,
Voila je voudrais créer un petit programme (client et serveur) qui permetrait de lire le contenu d'un dossier sur un ordi et d'envoyer ce contenu sur un autre ordi qui est sur le même réseau local.
Pour l'instant j'en suis qu'au début, je voudrais simplement créer le socket et l'ouvrir mais j'ai un petit problème. En effet si je choisi le port 80 j'ai le message "putain ça marche pas" qui s'affiche et si je change le port alors le accept() ne se fait même pas (je n'ai rien qui s'affiche).
Déja est-ce que je suis sur la bonne piste pour faire ce que je veux faire? ou alors est-ce que je dois carrément m'y prendre autrement? Et si c'est la bonne piste pourquoi est-ce que j'ai cette erreur?
mon code :
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 void main() { int tmp_taille; //initialisation WSADATA WSAData; WSAStartup(MAKEWORD(2,0), &WSAData); SOCKET sock; SOCKADDR_IN sin; //création de la structure qui contient les informations technique du socket sin.sin_addr.s_addr = INADDR_ANY; //définition de l'adresse du serveur sin.sin_family = AF_INET; //famille du cocket sin.sin_port = htons(80); //définition du port sock = socket(AF_INET,SOCK_STREAM,0); //création du socket bind(sock, (SOCKADDR *)&sin, sizeof(sin)); //atache le socket à l'adresse et au port défnini avant //maintenant sachant que nous sommes dans un serveur, il faut que le serveur écoute listen(sock, 5); //écoute le port sur le socket int val = 0; while(1) { //on met la taille la parce que sinon ca marche pas quand on met en direct dans le accept tmp_taille = sizeof(sin); val = accept(sock, (SOCKADDR *)&sin, &tmp_taille); if(val != INVALID_SOCKET) { // Fonctions à éxécuter sur le socket. printf("yyyhhhhaaaaaa le socket fonctione \n"); } else printf("putain ca marche pas\n"); } }
Partager