FindWindow(lpClassName,        {窗口的类名}lpWindowName: PChar {窗口的标题}
): HWND;              {返回窗口的句柄; 失败返回 0}//FindWindowEx 比 FindWindow 多出两个句柄参数:
FindWindowEx(Parent: HWND;     {要查找子窗口的父窗口句柄}Child: HWND;      {子窗口句柄}ClassName: PChar; {}WindowName: PChar {}
): HWND;
{
如果 Parent 是 0, 则函数以桌面窗口为父窗口, 查找桌面窗口的所有子窗口;
如果  是 HWND_MESSAGE, 函数仅查找所有消息窗口;
子窗口必须是 Parent 窗口的直接子窗口;
如果 Child 是 0, 查找从 Parent 的第一个子窗口开始;
如果 Parent 和 Child 同时是 0, 则函数查找所有的顶层窗口及消息窗口.
}函数原型:HWND FindWindowEx(HWND hwndParent,HWND hwndChildAfter,LPCTSTR lpszClass,LPCTSTR lpszWindow) hwndParent:要查找子窗口的父窗口句柄。

    如果hwnjParent为NULL,则函数以桌面窗口为父窗口,查找桌面窗口的所有子窗口。

    Windows NT5.0 and later:如果hwndParent是HWND_MESSAGE,函数仅查找所有消息窗口。

    hwndChildAfter :子窗口句柄。查找从在Z序中的下一个子窗口开始。子窗口必须为hwndPareRt窗口的直接子窗口而非后代窗口。如果HwndChildAfter为NULL,查找从hwndParent的第一个子窗口开始。如果hwndParent 和 hwndChildAfter同时为NULL,则函数查找所有的顶层窗口及消息窗口。

    lpszClass:指向一个指定了类名的空结束字符串,或一个标识类名字符串的成员的指针。如果该参数为一个成员,则它必须为前次调用theGlobaIAddAtom函数产生的全局成员。该成员为16位,必须位于lpClassName的低16位,高位必须为0。

    lpszWindow:指向一个指定了窗口名(窗口标题)的空结束字符串。如果该参数为 NULL,则为所有窗口全匹配。返回值:如果函数成功,返回值为具有指定类名和窗口名的窗口句柄。如果函数失败,返回值为NULL。

使用示例1:IntPtr ptrResult = FindWindow(null, "test");IntPtr ptrRadioButtonbox = FindWindowEx(ptrResult, IntPtr.Zero, "Button", "&8位");IntPtr ptrStartBtn = FindWindowEx(ptrResult, IntPtr.Zero, null, "确定");使用示例2:
const int BM_CLICK = 0xF5;
IntPtr maindHwnd = FindWindow(null, "QQ用户登录"); //获得QQ登陆框的句柄
if (maindHwnd != IntPtr.Zero)
{IntPtr childHwnd = FindWindowEx(maindHwnd, IntPtr.Zero, null, "登录");   //获得按钮的句柄if (childHwnd != IntPtr.Zero){SendMessage(childHwnd, BM_CLICK, 0, 0);     //发送点击按钮的消息}else{MessageBox.Show("没有找到子窗口");}
}
else
{MessageBox.Show("没有找到窗口");
}

  

 

转载于:https://www.cnblogs.com/marszhw/p/11087886.html

FindWindow和FindWindowEx函数使用相关推荐

  1. FindWindow、FindWindowEx、EnumWindows、EnumChildWindows使用详解

    FindWindow 函数原型:HWND FindWindow(LPCSTR lpClassName,LPCSTR lpWindowName); C#.NET声明如下: [DllImport(&quo ...

  2. python pywin32 相同句柄_如何利用Python和win32编程避免重复性体力劳动(一)——开始、FindWindow和FindWindowEx...

    请移步至这里以获得更加的排版和阅读体验,谢谢您 本系列文章假设各位看官对python是足够熟悉的,但却不太了解win32编程. 嘛..其实我也没学过win32编程,脸请各位看官随意招呼. 需求:最近因 ...

  3. 如何利用Python和win32编程避免重复性体力劳动(一)——开始、FindWindow和FindWindowEx

    本博客正逐步迁移至OrangeCube四次元 请移步至这里以获得更加的排版和阅读体验,谢谢您 本系列文章假设各位看官对Python是足够熟悉的,但却不太了解win32编程. 嘛..其实我也没学过win ...

  4. Windows API一日一练(41)FindWindowEx函数

    当你想控制一个现有的窗口程序时,就需要获取那个程序的窗口句柄.比如有一些黑客软件需要查找到窗口,然后修改窗口的标题.在外挂流行的今天,惊奇地发现它们也可以修改输入窗口的文字.这其中,就需要使用到Fin ...

  5. c语言findwindowex函数用法,VB中findwindowex函数的用法?

    FindWindowEx函数 函数功能:在窗口列表中寻找与指定条件相符的第一个子窗口 . 该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配.这个函数查找子窗口,从排在给定的子窗口后面 ...

  6. FindWindowEx函数

    当你想控制一个现有的窗口程序时,就需要获取那个程序的窗口句柄.比如有一些黑客软件需要查找到窗口,然后修改窗口的标题.在外挂流行的今天,惊奇地发现它们也可以修改输入窗口的文字.这其中,就需要使用到Fin ...

  7. Windows API一日一练 41 FindWindowEx函数

    当你想控制一个现有的窗口程序时,就需要获取那个程序的窗口句柄.比如有一些黑客软件需要查找到窗口,然后修改窗口的标题.在外挂流行的今天,惊奇地发现它们也可以修改输入窗口的文字.这其中,就需要使用到 Fi ...

  8. VB.net 进程通信中FindWindow、FindWindowEX、SendMessage函数的理解

    目录 一.代码背景 二.主要工具 三.函数解析 1.FindWindow: 2. FindWindowEx: 3.SendMessage: 四.具体代码示例: 1.第一部分功能: A.接收端: B.发 ...

  9. windows中使用Findwindow函数与FindWindowEx函数来实现自动控制、触发第三方软件事件的方法...

    FindWindow 用来根据类名和窗口名来得到窗口句柄的.但是这个函数不能查找子窗口,也不区分大小写. 如果要从一个窗口的子窗口中查找需要使用FindWindowEX. 如果要搜索的外部程序的窗口标 ...

最新文章

  1. 不再受限于数据集和硬件,下一代 ML 软件如何构建?
  2. PyTorch GPU安装指南 (Ubuntu 16.04 anaconda cuda8.0 cuDNN6.0)
  3. 微软发布Azure Pipelines,开源项目可无限制使用CI/CD
  4. c++11特性move和forward区别
  5. 【经验分享】为什么后台取到的时间和前台差8个小时?
  6. ios应用提交审核出现的问题总结
  7. 伴随矩阵,可逆矩阵相关思路分析之一
  8. Elastic 技术栈之 Filebeat
  9. JAX-RPC学习笔记(1)-Hello World!
  10. 啥是数据湖?老子(zǐ)告诉你 | 凌云时刻
  11. 天梯赛L2-10:排座位
  12. python实现移除某文件夹下所有文件
  13. 对机器学习实战第二章内容的思考
  14. D.背单词的小智(二分)
  15. C# C++ 互操作:C++向C#输出不定长数组或指针的实现
  16. 海思Hi3519A 基础入门教程
  17. SpringAMQP-Basic Queue、Work Queue、Fanout、Direct、Topic
  18. 为什么要学计算机排比句,计算机等级考试上机应试技巧
  19. 国内最优质的10个小众网站,你知道几个?
  20. 02优先队列和索引优先队列-优先队列-数据结构和算法(Java)

热门文章

  1. 骨传导耳机能降噪吗?骨传导耳机好不好用?
  2. Android 仿QQ个性标签显示
  3. 傅立叶变换和小波变换分析
  4. 数据库可视化软件(Navicat​ pojie版安装使用)
  5. C#开发学习~~~Console.WriteLine()
  6. Android安全输入设计与思考
  7. JavaWeb项目excel文件导入
  8. 微信小程序网悦新闻开发--我的模块开发(五)
  9. 一个贯穿图像处理与数据挖掘的永恒问题
  10. 字,字节,半字,双字