Bonjour,
J'ai quelques pb avec le WSAWaitForMultipleEvents(...)
En fait, je developpe un client serveur qui communique par des sockets en C++.
Je créé un thread qui se charge de la reception, et qui va attendre que des données lui arrive.
Pour cela, je fais:
WSAEVENT hEventObject;
hEventObject = WSACreateEvent();
// on lie l'EVENT au socket s
if (SOCKET_ERROR == WSAEventSelect(stl->sock, hEventObject, FD_READ)){
lastError = WSA_SELECT_ERROR;
}
// on attend l'EVENT. --- c'est là que ça plante
if (WSA_WAIT_FAILED == WSAWaitForMultipleEvents(1, &hEventObject, FALSE, WSA_INFINITE, FALSE)){
cout<<"verifions l'erreur\n";
lastError = WSA_WAIT_ERROR;
}
Le pb est que ça plante à l'execution (pas a la compil) sur WSAWaitForMultipleEvents et je ne comprend pas pourkoi.
j'ai un message qui me dit "la memoire ne peut pas etre 'written'..."
La socket est valide, je l'ai testée.
Le message ne s'affiche même pas !
(Juste pour info: WSA_WAIT_ERROR et WSA_SELECT_ERROR sont des #define que g defini dans mon .h, pas de soucis !!).
Est ce que ceci serait dejà arrivé a quelqu'un ?????
merci bcp !
Valoue