Bonsoir a tous
Voilà je suis le tuto de JeanYvesYves et j´ai regarder un peu tout les programmes et je suis tombé sur :
J. Le Réseau. ( winsock2.h)
J.1. Programme pour CHAT simple ( 2 fichiers) Serveur et Client
j´ai alors téléchargé les deux fichier et essayer de compiler mais malheureusement sa ne marche pas, ni pour le serveur ni pour le client.
Je remet les codes sources.
Serveur:
- include<stdio.h>
- include<winsock2.h>
- pragma comment(lib,"ws2_32.lib")
void main()
{ / / Ceci est affciher en rouge l´erreur vient
apparament de là. Cette erreur est la
suivante: 6 C:\Dev-Cpp\mainServeur.cpp `main´ must return `int´
int port;
SOCKET sock;
SOCKADDR_IN csin;
WSADATA wsa;
WSAStartup(MAKEWORD(2,0),&);
printf("%s","\nPort : " );
scanf("%i",&);
csin.sin_family=AF_INET;
csin.sin_addr.s_addr=htonl(INADDR_ANY);
csin.sin_port=htons(port);
sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
bind(sock,(SOCKADDR*)&,sizeof(csin));
listen(sock, 1);
SOCKET val = INVALID_SOCKET;
int len=sizeof(csin);
while(val==INVALID_SOCKET)
{
val = accept(sock, ( SOCKADDR *)&, &);
}
printf("accept ok\n");
char buffer[50];
memset(buffer,0,sizeof(buffer));
int err=0;
while(err>-1)
{
err=recv(val,buffer,sizeof(buffer),0);
printf("%s\n",buffer);
memset(buffer,0,sizeof(buffer));
scanf("%s",buffer);
err=send(val,buffer,sizeof(buffer),0);
memset(buffer,0,sizeof(buffer));
}
printf("Connection terminée\n\n");
WSACleanup();
system("PAUSE");
}
Et pour le client:
- include<stdio.h>
- include<winsock2.h>
- pragma comment(lib,"ws2_32.lib")
void main()
{ / / l´erreur est la même 6 C:\Dev-Cpp\mainClient.cpp `main´ must return `int´
int port;
char ip[15];
SOCKET sock;
SOCKADDR_IN sin;
WSADATA wsa;
WSAStartup(MAKEWORD(2,0),&);
printf("Ip : " );
scanf("%s",ip);
printf("%s","\nPort : " );
scanf("%i",&);
sin.sin_family=AF_INET;
sin.sin_addr.s_addr=inet_addr(ip);
sin.sin_port=htons(port);
sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
bind(sock,(SOCKADDR*)&,sizeof(sin));
if(connect(sock,(SOCKADDR*)&,sizeof(sin)))
{
printf("La connection a echoue\n");
system("PAUSE");
exit(0);
}
char buffer[50];
memset(buffer,0,sizeof(buffer));
int err=0;
while(err>-1)
{
scanf("%s",buffer);
err=send(sock,buffer,sizeof(buffer),0);
memset(buffer,0,sizeof(buffer));
err=recv(sock,buffer,sizeof(buffer),0);
printf("%s\n",buffer);
memset(buffer,0,sizeof(buffer));
}
printf("Connection terminée\n\n");
WSACleanup();
system("PAUSE");
}