我正在寻找一个窗口,其类名是“CliPBRDWNDCLASS”(它可以在办公室应用程序和其他应用程序中find)。
如果我使用FinDWindow或findwindowex,我find了第一个有这个类的HWND,但是我想要所有带有这个类的窗口,所以我决定使用recursionEnumChildwindows枚举所有窗口并find我想要的窗口:
//------------------------------------------------------------------------------- BOol CALLBACK enum_wnd_proc(HWND h,LParaM lp) { char cls[1024] = {0}; ::GetClassnameA(h,cls,1024); if(std::string(cls) == "CliPBRDWNDCLASS") { // match! } ::EnumChildwindows(h,enum_wnd_proc,NulL); return TRUE; } //------------------------------------------------------------------------------- int _tmain(int argc,_TCHAR* argv[]) { ::Enumwindows(enum_wnd_proc,NulL); return 0; } //-------------------------------------------------------------------------------
这就是这个窗口不能被Enumwindows返回,只能通过FinDWindow返回。
有没有人可以告诉它为什么不起作用?
如何使用Python 2.7创build一个希伯来文名称的文件?
是否有任何可视化工具来实现作为输出结果的@R_404_5601@数据的分层样式?
如何loggingwindows窗体应用程序中的键,而不是集中在窗体上?
windows:如何在新的命令窗口中运行某些东西,使窗口在进程完成或崩溃时closures?
Python Socket绑定在0.0.0.0上,不能通过127.0.0.1连接
ContactManager.RequestStoreAsync()抛出System.UnauthorizedAccessException
C ++崩溃转储,在Win32exception(使用catch(…)时)的堆栈展开 – VS 2003
分期环境与现场环境相等多less?
在windows上使用Ruby读取PNG文件失败
windows控制台中的C ++键input
Enumwindows不起作用的原因是您正在寻找的窗口是一个消息窗口 。
findwindowex可以在两种情况下找到它们:
如果hwndParent和hwndChildAfter都是NulL。
如果您指定“HWND_MESSAGE”作为您的父窗口。
此代码将为您找到所有相关的窗口( 这里是一个解决方案的修改版本):
HWND hWindow = findwindowexA(HWND_MESSAGE,NulL,"CliPBRDWNDCLASS",NulL); while (hWindow ) { // Do something here with window... // Find next window hWindow = findwindowexA(HWND_MESSAGE,hWindow,NulL); }
还要注意的是,不同于上面的链接中写的,只有消息窗口的GetParent() 不返回HWND_MESSAGE (至少不是我的测试)。
我简单的方法来枚举所有消息窗口:
EnumChildwindows(GetAncestor(findwindowex(HWND_MESSAGE,0,0),GA_PARENT),addr EnumChildProc,0)
// GetAncestor(findwindowex(HWND_MESSAGE,0,0),GA_PARENT)=“GetMessageWindow”(“Message”类)
// GetAncestor(findwindowex(HWND_DESKtop,0,0),GA_PARENT)= GetDesktopWindow(class“#32769”)
总结以上是内存溢出为你收集整理的FindWindow怎么find一个EnumChildWindows没有的窗口?全部内容,希望文章能够帮你解决FindWindow怎么find一个EnumChildWindows没有的窗口?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)