Bonjour à tous,
j'ai un petit problème avec les sockets, je veux créer un serveur, mais lorsque un client essaye de se connecter, la connection est accepté puis tout de suite coupée...
je vois pas du tout d'où ca peut venir (je suis sous vc++ 2005 express edition)
#include <winsock2.h>
#pragma comment(lib, "WS2_32.lib")
#include <windows.h>
#define WM_SOCKET WM_USER+100
const int port=10;
SOCKET _socket;
SOCKET clientSocket;
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{switch (message)
{ case WM_SOCKET:
switch(WSAGETSELECTEVENT(lParam))
{ case FD_ACCEPT:
clientSocket = accept(_socket,0,0);
break;
case FD_READ:
break;
case FD_CLOSE:
break;
}
case WM_CREATE:
WSACleanup();
WSADATA wsaData;
WSAStartup(MAKEWORD(2,2),&wsaData);
_socket=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
SOCKADDR_IN infoSocket;
infoSocket.sin_family = AF_INET;
infoSocket.sin_addr.s_addr = INADDR_ANY;
infoSocket.sin_port = htons(port);
bind(_socket,(SOCKADDR*) &infoSocket, sizeof(infoSocket));
listen(_socket,SOMAXCONN);
WSAAsyncSelect(_socket,hwnd,WM_SOCKET,FD_ACCEPT|FD_READ|FD_CLOSE);
break;
}
int WINAPI WinMain(...)
{création de la fenetre...
}
merci d'avance