当前位置:  -> 首页 -> 原创文章 -> C++下查找同一标题窗口句柄的方法

上一篇 | 下一篇
C++下查找同一标题窗口句柄的方法
作者:洛羽叶  点击率:7212  发布时间:2012-12-10
C++下查找同名窗口有两个方法FindWindow/FindWindowEx、EnumWindows,特别是FindWindowEx具有更高的效率每秒可查找10000次以上,枚举窗口采用回调函数的方式,效率较低,每秒处理1000次左右。

1.  FindWindow与FindWindowEx
    
//查找第一个窗口
    hWnd = ::FindWindow(NULL,"test");
    
//查找第N个窗口 N>=2
    while (hWnd!=NULL)
    {
        hWnd = ::FindWindowExA(
NULL,hWnd,NULL,"test");
    }


2.EnumWindows枚举系统窗口

    ::EnumWindows((WNDENUMPROC)HandleCallBack,(LPARAM)
this);        

    BOOL CALLBACK HandleCallBack(HWND hWnd,LPARAM lParam)
    {
        
char buf[256];      
    
        ::GetWindowTextA(hWnd,buf,
256);
        
        
if (strlen(buf) > 0 && strstr(buf,"test"))
            
//找到同名窗口
    
        
return TRUE;
    }

标签: FindWindow FindWindowEx EnumWindows C++
引用地址:本站原创
   站点首页      技术人生      旅途足迹      我要留言      友情链接      关于站长   
[本站统计]
在线人数:2
今日访问:897
总访问量:1468579
Copyright 2006-2022 EasyWeb 1.6 订阅 All Rights Reserved
粤ICP备08028977号-1
www.luoriver.com
Created by WWH in 2006