Thread avec mfc [Résolu]

Signaler
Messages postés
2
Date d'inscription
mardi 27 décembre 2005
Statut
Membre
Dernière intervention
27 avril 2006
-
Messages postés
319
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
16 février 2009
-
salut a tous ,
donc comme l'indique le titre g un grand pb avec les thread en MFC :
1-j'utilise AfxBeginThread mais la fonction que doit executer ce thread est une methode de classe donc la declaration de AfxBeginThread n'est pas accepté par le compilateur.
2-est il possible que le thread ,une fois crée ,accede aux attribut de classe apelante (mon thread doit raffrechir un listebox)
merci d'avance.

1 réponse

Messages postés
319
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
16 février 2009

En fait tout est un problème de convention d'appel de procédure. Les méthodes d'une classe sont appellées en thiscall (le this est implicitement passé en paramètre). Une méthode de Thread doit être appelée sans le this (convention stdcall). Pour empêcher le passage implicite du this il faut donc mettre ta procédure en static (ou la sortir de ta classe), et pour bénéficier du this, ben tu le passes lors de l'appel ! Tu peut aussi utiliser CreateThread pour créer ton Thread bien que ça ne change pas grand chose pour toi.