MIDSUMMER_yy 2017-12-19 02:33 采纳率: 66.7%
浏览 2777
已采纳

用C++编程,利用handle来获取其他窗口的控件信息

求一个有解析的代码,能够直接在VS2010上跑起来的,比如我输入一个现存窗口的名字,可以输出这个窗口所有的控件名,如果可以的话,加上sendMessage或者PostMessage来控制这些控件的内容,不胜感激。

  • 写回答

1条回答 默认 最新

  • oyljerry 2017-12-19 05:45
    关注

    http://blog.csdn.net/jiangqin115/article/details/46957565

     #include <windows.h>
     BOOL CALLBACK EnumChildProc(HWND hWnd,LPARAM lParam);
    void main(int argc, char* argv[])
     {
         char className[]="notepad";
         HWND hWnd=::FindWindow(className,NULL);
         if(hWnd)
         {
             ::EnumChildWindows(hWnd,EnumChildProc,0);
             return 0;
         }
         MessageBox(NULL,"fail!","fail",MB_OK);
         return 0;
     }
     BOOL CALLBACK EnumChildProc(HWND hWnd,LPARAM lParam)
     {
         char temp1[256],temp2[256];
         ::GetWindowText(hWnd,temp1,255);
         wsprintf(temp2,"hwnd:%x text: %s",hWnd,temp1);
         MessageBox(NULL,temp2,"cwnd",MB_OK);
         return true;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作