ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

FindWindow和FindWindowEx

2019-06-30 19:52:07  阅读:311  来源: 互联网

标签:GW NULL 窗口 hwnd HWND FindWindowEx 句柄 FindWindow


函数原型:FindWindow(lpszClassName,lpszWindowName)

参数:lpszClassName--窗口类名;lpszWindowName--窗口标题

功能:查找窗口,未找到则返回NULL

SDK中

HWND hwnd = FindWindow(NULL, "计算器");

if(m_pWnd)

{

AfxMessageBox("找到了!");

::PostMessage(hwnd,WM_CLOSE,0,0);//强迫退出

}

MFC中

CWnd * m_pWnd = FindWindow(NULL, "计算器");

if(m_pWnd)

{

AfxMessageBox("找到了!");

::PostMessage(m_pWnd->m_hWnd,WM_CLOSE,0,0);//强迫退出

}

 

函数原型:HWND FindWindowEx(

HWND hwndParent,      // handle to parent window
HWND hwndChildAfter,  // handle to a child window
LPCTSTR lpszClass,    // pointer to class name
LPCTSTR lpszWindow    // pointer to window name
);

功能:查找子窗口或子控件,未找到则返回NULL

HWND h = FindWindow(NULL, "计算器" );

HWND m_hwnd = FindWindowEx(h, 0, "Button", "Ok" );

HWND m_hwnd = FindWindowEx(h,NULL,NULL,"Ok");

HWND m_hwnd = FindWindowEx(h,NULL,"Button",NULL);

SendMessage(m_hwnd, WM_KEYDOWN, 13, 0x011c0001 );
SendMessage(m_hwnd, WM_KEYDOWN, 13, 0x011c0001 );
SendMessage(m_hwnd, WM_KEYUP, 13, 0xc11c0001 );

 

其他函数

HWND GetNextWindow(HWND hWnd,UNIT wCmd)

功能:返回z序中的前一个或后一个窗口的句柄

参数: hWnd:基准窗口句柄 wCmd:指明窗口返回的是前一窗口的句柄还是后一窗口的句柄。该参数可以是下列两个值之一: GW_HWNDNEXT:返回在给定窗口的下面窗口的句柄。 GW_HWNDPREV:返回在给定窗口的上面窗口的句柄。 GW_HWNDFIRST = 0; GW_HWNDLAST = 1; GW_HWNDNEXT = 2; GW_HWNDPREV = 3; GW_OWNER = 4; GW_CHILD = 5;

返回值:如果函数成功,返回值是前一窗口(或后一窗口)的句柄。如果前后窗口不存在,则返回值为NULL。

 

BOOL EnumChildWindows(HWND hWndParent,WNDENUMPROC lpEnumFunc, LPARAM lParam)

功能:枚举子窗体

参数:

hWndParent 父窗口句柄 lpEnumFunc 回调函数地址 lParam 自定义参数

注意:回调函数的返回值将会影响到这个API函数的行为。如果回调函数返回true,则枚举继续直到枚举完成;如果返回false,则将会中止枚举。

 

int GetClassName(HWND hWnd, LPTSTR IpClassName, int nMaxCount)

功能:获得指定窗口所属的类的类名

参数:

hWnd:窗口的句柄及间接给出的窗口所属的类。 IpClassName:指向接收窗口类名字符串的缓冲区的指针。 nMaxCount:指定由参数lpClassName指示的缓冲区的字节数。如果类名字符串大于缓冲区的长度,则多出的部分被截断。

返回值:如果函数成功,返回值为拷贝到指定缓冲区的字符个数:如果函数失败,返回值为0。

转载于:https://www.cnblogs.com/doudongchun/p/3699612.html

标签:GW,NULL,窗口,hwnd,HWND,FindWindowEx,句柄,FindWindow
来源: https://blog.csdn.net/weixin_34313182/article/details/94353352

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有