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 -
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
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
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é.
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é.