Error thread

cleopatre90 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Bonjour

mon programme marche comme suivant:
Lorsqu'on coche une case (grab), on lance un thread qui va éxécuter le while et vérifier l'état d'une variable qui va permettre d'interrompre la boucle infinie. Lorsqu'on decoche la case, on change l'état de cette variable pour sortir de la boucle infinie.



bool ATTENTE_Active;

bool ThreadP201_Actif=false;

HANDLE P201;

int DWORDID_P201, SansArgument;


void CUserOCXAppDlg::OnCGrab() // La fonction appelée lorsqu'on coche (ou décoche) la case grab


{

if (m_cvImgSrc.GetIsGrabber())
{

ATTENTE_Active=true;
P201= CreateThread( NULL, 0, SpATTENTE,&SansArgument,0 ,&ID_P201);
}

else
{
ATTENTE_Active=false;
}
}

// ===========================================

DWORD WINAPI SpATTENTE( LPVOID Param )

{
ThreadP201_Actif=true; //Variable générale qui indique que le thread est actif et chargé en mémoire

while( ATTENTE_Active)
{
void CUserOCXAppDlg::OnBSnap();
}

// Fin du thread :

ThreadP201_Actif=false;

ExitThread( 0 );

return 0;

}





mais j'ai eu les erreurs suivants:


error C2065: 'SpATTENTE' : undeclared identifier
error C2065: 'ID_P201' : undeclared identifier
error C2365: 'SpATTENTE' : redefinition; previous definition was 'formerly unknown identifier'
error C2761: 'void CUserOCXAppDlg::OnBSnap(void)' : member function redeclaration not allowed
1>Build log was saved at "file://d:\...\BuildLog.htm"

Merci de m'aider

4 réponses

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Salut.
Il manqué une déclaration de SpATTENTE en début de programme. Son utilisation dans CreateThread est donc impossible.
Pareil, ID_P201 n'est pas déclaré.
1
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
le void devant l'appel lui fait croire à une redéfinition.
1
cleopatre90 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
oui c'est reglé merci
et pour l'erreur C2761: member function redeclaration not allowed ?
0
cleopatre90 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
qu'est ce que je dois faire pour lui dire qu'il ne s'agit pas d'une redéfinition ?
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
vire le void qui ne sert à rien.
0