开源API按类型枚举系统QQ窗口判断QQ窗口类型
功能说明:该程序是一个运行在Windows平台上的易语言桌面工具,核心功能是实时枚举、识别并分类当前系统中所有正在运行的腾讯QQ(基于TXGuiFoundation窗口类)的聊天相关窗口,包括好友会话、群会话、临时会话、消息盒子、主窗口、资料窗口及消息管理器等,并以结构化方式(如列表框双列显示:标题+会话类型)动态呈现给用户。程序通过Windows API函数EnumWindows遍历顶层窗口,在回调函数lpEnumFunc中筛选出类名为“TXGuiFoundation”且标题非系统内部窗口(如“TXMenuWindow”“TXFloatingWnd”)的有效QQ窗口句柄,并排除空标题窗口;随后利用GetWindow获取子窗口句柄,结合GetClassName和自定义IsQun函数深度判断会话性质——例如通过检测Shell Embedding子窗口的网页标题是否为“对方资料”识别好友资料页(返回2),通过TXGuiFoundation子窗口识别群窗口(返回3),通过TXEdit控件链路定位消息输入区关联的Shell Embedding网页识别临时会话(返回6),以及通过窗口层级关系(如GetWindow(hwnd,5)再GetWindow(...,2))区分主窗口(返回5)和普通好友会话(返回1)等。所有有效句柄存入整数型动态数组“数组”,由时钟周期事件驱动持续刷新:先调用清理子程序剔除已关闭窗口(IsWindow检测),再调用处理子程序将句柄数组映射到列表框,自动同步表项数量(增删行)、填充窗口标题(第0列)和语义化会话类型标签(第1列),并依据IsQun返回值设置对应状态图标。整个流程无需注入QQ进程,纯用户态枚举与属性分析,属于轻量级QQ窗口状态监控辅助工具,典型用途包括多开QQ会话管理、自动化脚本前置环境探测、或UI层会话可视化统计等场景。
======窗口程序集1
| |
| |------ _时钟_周期事件
| |
| |------ lpEnumFunc
| |
| |------ 处理
| |
| |------ 处理列表框
| |
| |------ IsQun
| |
| |------ 搜索
| |
| |------ 清理
| |
| |------ 取网页对象
| |
| |------ 取网页句柄
| |
| |------ 取网页文档对象
| |
| |------ _列表框_表项被激活
| |
| |------ _列表框_当前表项被改变
| |
| |------ _关闭该会话_被单击
| |
| |------ _关闭选中会话_被单击
| |
| |
======调用的Dll
| |
| |---[dll]------ EnumWindows
| |
| |---[dll]------ GetClassName
| |
| |---[dll]------ GetWindowText
| |
| |---[dll]------ GetWindow
| |
| |---[dll]------ IsWindow
| |
| |---[dll]------ ObjectFromLresult
| |
| |---[dll]------ RegisterWindowMessage
| |
| |---[dll]------ SendMessageTimeout
| |
| |---[dll]------ IsWindowVisible
| |
| |---[dll]------ SendMessage
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。