标题:C#EnumChildWindows无法枚举所有子窗口的解决方法
只看楼主
ChenghongWu
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-11-10
 问题点数:0 回复次数:2 
C#EnumChildWindows无法枚举所有子窗口的解决方法
程序代码:
            string WinClassName = "Itasca2Manager";
            IntPtr myIntPtr = FindWindow(WinClassName, null);
            Console.WriteLine("主窗体的句柄为:" + myIntPtr.ToInt32());
            bool S = EnumChildWindows(myIntPtr, callback, IntPtr.Zero);
            for (int i = 0; i < listWnd.Count; i++)
            {
                Console.WriteLine("第{0}子窗口的句柄为{1}",i+1, listWnd[i]);
            }
搜索更多相关主题的帖子: color 
2013-12-05 16:24
ChenghongWu
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-11-10
得分:0 
如果事先把程序打开的话,在运行程序可以将所有的子窗口的句柄求出;
但是,如果采用WinExec(filePath, SW_MAXIMIZE);打开的话,只能获取部分子窗口的句柄,其中同类名的子窗口只能获得第一个窗口的句柄;
感觉挺莫名其妙的?
2013-12-05 16:26
ChenghongWu
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-11-10
得分:0 
加入System.Threading.Thread.Sleep(1000);//暂停一秒 就可以解决了
2013-12-05 16:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-424745-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.713388 second(s), 10 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved