Hook WH_CBT et GetDlgItem

Résolu
cs_Booster Messages postés 235 Date d'inscription mercredi 30 octobre 2002 Statut Membre Dernière intervention 6 octobre 2009 - 17 mars 2009 à 21:07
cs_Booster Messages postés 235 Date d'inscription mercredi 30 octobre 2002 Statut Membre Dernière intervention 6 octobre 2009 - 17 mars 2009 à 22:23
Bonjour à tous,

J'ai un problème avec la fonction GetDlgItem (Qui retourne tous le temps 0) lorsque je suis dans ma fonction de callback de mon hook je vous explique :

Je réalise un hook (qui marche parfaitement) grâce à :
gHookCBT = SetWindowsHookEx(WH_CBT, CBTProc, gInstance, aThreadId);

Et voici ma fonction de callback (où est le problème) :
LRESULT CALLBACK CBTProc( int nCode,WPARAM wParam, LPARAM lParam)
{
        if (nCode == HCBT_CREATEWND)
        {
            CBT_CREATEWND * theCBT = (CBT_CREATEWND *) lParam;
           
            //PROBLEME ICI
            HWND theHwndWindow = GetDlgItem(theCBT->lpcs->hwndParent,(int)theCBT->lpcs->hMenu);
          
            DebugInfo("HWND=%d theHwndWindow);
        }
    return CallNextHookEx(gHookCBT, nCode, wParam, lParam);
}

Mon problème est donc à la fonction GetDlgItem qui me retourne tous le temps 0 alors que le theCBT->lpcs->hwndParent est correct (vérifier avec le soft que je hook) et que le theCBT->lpcs->hMenu est aussi correct.

Pourquoi cette fonction ne marche t'elle pas dans ce cas ?

Merci d'avance !

2 réponses

cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 4
17 mars 2009 à 22:13
Ben, étant donné que la fenêtre n'a pas encore été créée, peut-être qu'elle n'apparaît pas encore dans la liste des fenêtres filles de la fenêtre parent et par conséquent...
mais pourquoi veux-tu récupérer le hwnd de cette manière, de toutes façons? Tu l'as d'office avec wParam ?!
3
cs_Booster Messages postés 235 Date d'inscription mercredi 30 octobre 2002 Statut Membre Dernière intervention 6 octobre 2009
17 mars 2009 à 22:23
Arf merci désolé, j'ai mal lu la msdn c'est exactement ça qu'il me faut (wParam)

Merci beaucoup !
0
Rejoignez-nous