bonjour ,

Etant débutant , je recherche des infos sur le passage de paramètres dans un thread .

Et plus particulièrement avec des vecteurs string .

Voila un bout de code .

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

char PROG_RX (int NreDataArecevoir ,vector< string > &ChaineRecu)
{
ThreadHandle_receve_buffer=CreateThread(NULL,NULL,ThreadProc_receve_buffer,(LPVOID)&ChaineRecu,0,&ThreadID_receve_buffer);
   if ( WaitForSingleObject ( ThreadHandle_receve_buffer, 10000 ) == WAIT_TIMEOUT ) // anti blocage si pas de réponse ou manque de data
	 {
	   code_erreur = 6 ;
	 }
   CloseHandle(ThreadHandle_receve_buffer);
   ThreadHandle_receve_buffer=NULL;
   delete ThreadHandle_receve_buffer ;
  }
 return code_erreur  ;

DWORD WINAPI ThreadProc_receve_buffer(LPVOID lparam)
{
if ( monClientTcp->Connected == true )
  {
    vector <string>  ChaineRecu= reinterpret_cast <vector <string>&>lparam);
    ChaineRecu [0] = "test" ; <---- ????:aie:
je pense avoir fait une erreur dans le cast . Surement une histoire de pointeurs ... J'avou les pointeurs c pas mon point fort !!!!
Je voudrais limiter au maximum l’utilisation d'une variable globale dans cette Dll .


Merci beaucoup par avance .