频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

VC++基础:枚举当前打开的所有窗口

来源:CSDN 作者:taianmonkey 出处:巧巧读书 2005-11-06 进入讨论组
  一、原理

  其原理是利用GetWindowLong(hWnd,GWL_STYLE)& WS_VISIBLE对打开的窗口进行查找,并将窗口的句柄存放在一个HWND的数组中,结合EnumWindows进行窗口的枚举,从而得到响应的窗口名称;

  二、主要函数介绍:
  BOOL EnumWindows(
  WNDENUMPROC lpEnumFunc, // callback function
  LPARAM lParam // application-defined value
  );
  LONG GetWindowLong(
  HWND hWnd, // handle to window
  int nIndex // offset of value to retrieve
  );
  详细资料请查看MSDN;
  在此我定义了一个过程EnumWindowsProc,通过GetWindowLong来完成对打开程序窗口的枚举;通过ListBox实现程序的列举;并将每次调用的枚举结果存放在/info目录下当天日期为文件名称的.txt文件里;

  三、主要实现代码:

  枚举窗口句柄:

  if(::GetWindowLong(hWnd,GWL_STYLE)& WS_VISIBLE)
  {
  m_hwndFind[m_num] = hWnd;//record the HWND handle into array
  m_num++;//count start
  }


巧 巧 读 书:http://www.qqread.com/vc/i520574020.html 更多文章 更多内容请看界面编程专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章