Bonjour,
je suis débutant dans la programmation socket et j'ai déja eu des probleme que j'ai pu résoudre grace à l'aides des membres de ce site.
J'ai aujourd'hui un nouveau probleme.
voici mes code(je précise que je suis sur linux)
code serveur:
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 #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> #define INVALID_SOCKET -1 #define SOCKET_ERROR -1 #define closesocket(param) close(param) typedef int SOCKET; typedef struct sockaddr_in SOCKADDR_IN; typedef struct sockaddr SOCKADDR; int main() { SOCKET sock; char *buffer="buffer"; sock=socket (AF_INET, SOCK_STREAM, 0); SOCKADDR_IN sin; sin.sin_addr.s_addr = htonl (INADDR_ANY); sin.sin_family = AF_INET; sin.sin_port = htons (65535); bind (sock, (SOCKADDR *) &sin, sizeof sin); listen(sock, 5); int taille = (int) sizeof(sin); accept (sock, (SOCKADDR *) &sin, &taille); printf("quelqu'un vient de se conecter\n"); send(sock,buffer,strlen(buffer),0); closesocket(sock); return EXIT_SUCCESS; }
code client:
Comme vous pouvez le voir des que le programme client se connecte au serveur, le programme serveur affiche "quelqu'un vient de se conecter".
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 #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> #define INVALID_SOCKET -1 #define SOCKET_ERROR -1 #define closesocket(param) close(param) typedef int SOCKET; typedef struct sockaddr_in SOCKADDR_IN; typedef struct sockaddr SOCKADDR; int main() { SOCKET sock; char buffer[30]; sock=socket(AF_INET, SOCK_STREAM, 0); SOCKADDR_IN sin; sin.sin_addr.s_addr = inet_addr("127.0.0.1"); sin.sin_family = AF_INET; sin.sin_port = htons (65535); connect(sock, (SOCKADDR *)&sin, sizeof(sin)); recv(sock,buffer,strlen(buffer),0); printf("%s\n",buffer); closesocket(sock); return EXIT_SUCCESS; }
Jusque la tout fonctionne bien.
Ensuite le programme doit envoyer le message bonjour au client qui doit afficher le message bonjour.
Cepandant le seul "message" que le client m'affiche est celui ci:
http://saunivers.ifrance.com
Pouvez vous m'aidez à résoudre ce probleme?
merci d'avance
Partager