Bonjour à tous,
Je suis un débutant en C++ et en communication socket.
Je souhaite réaliser un serveur capable de recevoir la connexion de plusieurs clients en utilisant les classes MFC !
J'ai une classe CSocketService et CSocketServeur qui dérivent de CAsyncSocket, et d'après mes recherches pour créer un multi-client, on doit créer un thread après le Accpet() dans la méthode OnAccept() de CAsyncSocket.
Mon thread est correctement crée, mais ensuite je ne sais pas quoi mettre comme code dans la fonction de mon thread pour qu'il puissent recevoir des messages des clients.
Tous mon code est situé dans le fichier SocketServeur.cpp qui dérivent de CAsyncSocket
Je déclare mon thread comme sa :
La fonction de mon Worker Thread :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 void CSocketServeur::OnAccept(int CodeErreur) { Accept(m_SocService); /********************************************************************************* Initialisation Worker Thread **********************************************************************************/ pthread = new CThread; pthread = AfxBeginThread(WorkerRunFunction,0); /********************************************************************************/ CAsyncSocket::OnAccept(CodeErreur); }
Mon fichier SocketServeur.h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 /*************************************************************************** Fonction thread de travail ***************************************************************************/ UINT WorkerRunFunction (LPVOID pParam) { //message de vérification du thread AfxMessageBox("Thread correctement crée"); // ???? Code à déterminer return 0; }
Je vous remercie de votre aide d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 class CSocketServeur : public CAsyncSocket { public: CSocketServeur(); virtual ~CSocketServeur(); void OnAccept(int CodeErreur); CSocketService m_SocService; CWinThread *pthread; };![]()
Partager