枚举其他窗口中一个控件下的Button控件可以枚举出控件ID 但是获取不到Button控件的句柄。
BOOL CALLBACK EnumChildProc(HWND hwndChild, LPARAM lParam) 

id=GetDlgCtrlID(hwndChild); if (id==3512)  //需要的Button ID  spy++获取的
{
//执行
HWND hwd4=FindWindowEx(hwndChild,NULL,"Button",NULL);
if (hwd4)
{
//不执行
}

}
return  TRUE; 

}
可以获取需要的按钮的ID 但是句柄获取不到。不知道问题出在哪里
可不可以用这个ID获取到按钮的句柄。

解决方案 »

  1.   

    FindWindowEx函数用法错了,第一个参数应该是父窗口句柄,具体查MSDN
      

  2.   


    是啊  hwndChild  这个就是按钮的父窗口句柄 在spy++里面也可以看得到
      

  3.   

    通过hwndChild句柄 都能获取到那个按钮的ID了 但是不知道怎么来获取按钮的句柄
      

  4.   

    实际上你已经得到那个按钮的HWND了,就是hwndChild
      

  5.   

    id=GetDlgCtrlID(hwndChild);       
    if (id==3512)  //需要的Button ID  spy++获取的     
    {
     // 这里的hwndChild就是你想要按钮的HWND。