找回密码
 加入
搜索
查看: 415007|回复: 1323

[原创] Au3.WProbe 窗口探测 1.0

 火... [复制链接]
发表于 2010-8-26 04:02:01 | 显示全部楼层 |阅读模式
本帖最后由 afan 于 2024-3-25 10:58 编辑





  这是一个探测窗口控件的小工具,类似于Au3自带的窗口信息工具Au3Info,加强了部分功能,比如可以检索窗口的全部控件及关系
   窗口,并可以主动显示其坐标等信息;可在全屏置顶的窗口用快捷键探测等。同时特别加强了易操作性。以下简单介绍下使用方法:

1,按住鼠标左键拖动靶心图标(或按Ctrl+F9)至目标窗口,随即会出现红色界标线包围整个窗口或某控件,在需要探测的窗口或控件上
   松开鼠标按键(或再按Ctrl+F9或Esc),本工具会显示窗口及控件的相关信息,如需比较详细的内容可点击“开详情”查看;

2,如果控件存在有效的控件文本,会在“控件类”下方显示深灰色的信息条,其上会显示控件文本的部分(或全部)字符;
   如果同时还存在快捷键的字符时,会在深灰色的信息条后面加显一个颜色稍浅的信息条,其上为键名;
   左键单击可分别复制这两项的字符串(注:快捷键键名前会自动加上“!”,方便使用Send之类函数)

3,在“控件”栏目处单击右键可在“控件”、“客户”、“屏幕”循环切换坐标方式;
   “控件”处的坐标为松开鼠标左键时的相对于控件范围的坐标,对于无具体ID的控件的仍可尝试使用此坐标进行 ControlClick 点击;
   “用户”处的坐标为松开鼠标左键时的相对于窗口客户区的坐标,使用此坐标方式时需先用 Opt('MouseCoordMode', 2)
   “屏幕”处的坐标为松开鼠标左键时的屏幕绝对坐标,如果之前更改过MouseCoordMode,使用此坐标时需 Opt('MouseCoordMode',1)

4,在下拉框中有控件的数量及相关信息,在控件类别名后面有“=1”或“=0”的字样,分别代表在当前的窗体中控件可见或不可见;
   在下拉框中选择某项即可在窗体中闪烁界标线,可见控件为蓝色,不可见控件为墨绿色。

5,左键点击各栏目(有数据时)可复制其内容到剪贴板,方便粘贴使用(按住鼠标可持续显示,方便查阅);
   在“窗口类”或“控件类”栏目上(有数据时)点击右键将复制该类的高级模式到剪贴板;

6,关系窗为当前探测的窗口与之同进程的关系窗口,对于窗体内嵌或外挂了子窗口都可以一览全景;
   如果探测到的为子窗口还会显示其父窗口句柄,当然父窗口也会在其关系窗中有详细信息;

7,本工具仅在32位 WinXP sp3 中进行过测试,不保证其它系统能正常使用,如有问题请反馈。
举个用 ControlClick 点击无具体控件ID的简单例子。比如说你要打开一个文件夹,或者桌面的某个快捷方式(当然这里不准使用Run或ShellExecute方式),如何操作?用 MouseClick 可以,不过,鼠标移过去了,影响用户其它工作,且需要在桌面可见的情况下。用 ControlClick 操作?那些图标并无具体控件 ID ,怎么点击?当然就要用到 ControlClick 后面的控件坐标参数了。
以下为双击桌面第一个图标的例子。用探测器得到桌面标题为“Program Manager”, 控件类名为“SysListView321”,控件坐标为“36, 31”:(注意,这里是XPsp3的探测结果,Win7可能不同;桌面第一个图标的坐标也可能不同)
Sleep(2000)
ControlClick ('Program Manager', '', 'SysListView321', 'left', 2, 36, 31)

结果就是,就算桌面不可见,仍可执行双击打开。


更新历史:

240315 更新 1.0 版
        [修正]对于.NET框架的窗体可能无法正确识别控件
        [修改]在使用热键而非拖动靶标操作时,光标也会随之切换为靶标/正常
        [新增]在窗口“控件坐标”栏目下方显示当前坐标的颜色及值,点击可复制

240313 更新 0.9 版
        [修改]窗口不再分割为两部分,意义不大,整合为一
        [修改]布局细微调整,并适配支持高DPI

240312 更新 0.8 版
        [修改]Input控件设为只读,防止误改
        [新增]详情窗底部增加输出信息,点击可显示可复制

240220 更新 0.7.1 版
        [修正]拖动靶标可能造成鼠标光标变小等异常问题

210309 更新 0.7 版
        [修改]程序标题右侧添加当前的热键(有时候系统热键多了容易忘……)
        [修改]使用热键捕获时,若出现闪烁框后3秒未移动鼠标则自动选定,适合捕获某些若按键或移动鼠标就消失或改变的情形
        [修改]右键点击“窗口类”以复制数据时,若标题文本非空,则复制时以循环切换 添加/不添加 标题文本
        [修改]对于短暂捕获后消失的窗口,复制控件信息时亦可,不会再提示“目标窗口已关闭,无法使用高级模式”

160112 更新 0.6.5 版
        [新增]为避免热键 Ctrl+F9 与系统或其它程序冲突,可自行创建配置文件“WPConfig.ini”, 在“Options”字段中添加“HK=^{F9}”,并修改为需要的热键
        [修改]界面因系统不同而相应的细微调整
        [修改]其它逻辑细微调整

130310 更新 0.6.4 版
        [修正]修正一处可能造成程序崩溃的问题

120311 更新 (0.6.3版)
        [修正]探测CMD窗口时,因数组错误造成程序退出。

100914 更新 (0.6.2版)
        [修正]目标窗口已关闭时,复制类高级模式时的数据参数为空的问题,现已改为关闭时提示无法使用高级模式;

100913 更新 (0.6.1版)
        [修改]重写部分探测代码,尽可能探测到的首显控件为可操作控件;
        [修改]优化了部分代码,使探测速度更快;
        [修正]探测某些悬浮窗可能显示的界标线位置有误;
        [修正]在非控件区(如标题栏)仍显示控件相关信息的问题;
        [修改]关系窗选择下拉框将默认选中(显示)当前的窗体(之前的版本均为显示“关系窗数量:x”);
        [增加]详情版面增加窗口的进程pid及程序路径信息栏(同时取消了重复信息“控件数量”栏目);

100908 更新 (0.5.5版)
        [修正]窗口类的高级模式去除接口参数;
        [修正]控件文本如果全部是空字符也会显示深灰色的信息条的问题;
        [修正]如果下拉选择的控件和上次选择的一样将不会显示线框的问题;
        [修改]控件选择下拉框将默认选中(显示)当前的控件(之前的版本均为显示“控件数量:x”);
        [增加]在“控件选择下拉框”下方增加Cxx Wxx 的文本信息,C后为控件数,W后为窗体数。

100907 更新 (0.5.2版)
        [修改]在“窗口类”或“控件类”栏目上(有数据时)点击右键将复制该类的高级模式到剪贴板;
        [增加]在“控件类”栏目下方位置增加了两个可点击复制的信息文本条,便于在关详情时也能进行相关操作。其作用如下:
           如果控件存在有效的控件文本,则会显示深灰色的信息条,其上会显示控件文本的部分(或全部)字符;
           如果同时还存在快捷键的字符时,会在深灰色的信息条后面加显一个颜色稍浅的信息条,其上为键名;
           左键单击可分别复制这两项的字符串(注:快捷键键名前会自动加上“!”,方便使用Send之类函数)
        [修改]以前版本在单击复制后会显示1秒的提示,考虑到查阅复制内容的人性化,将显示1秒的提示改为如下:
           在鼠标按键按下后会持续显示,直到鼠标按键弹起。(如果按下弹起间隔不足1秒将显示1秒)

100906 更新 (0.5版)
        [修正]窗口仅有一个控件时不会显示探测边框线及信息有误;
        [修改]控件数量下拉列表排序改为按控件的创建顺序排列;
        [修改]左键单击托盘图标显示/隐藏界面,右键单击显示菜单;
        [修改]关系窗下拉列表默认显示其关系窗数量;
        [增加]在“控件类”栏目上点击右键将复制首个有效的控件文本(如果有)行到剪贴板;

100901 更新 (0.4.8版)
        [修改]重新设计详情界面,方便点击复制及浏览;
        [修正]窗口无其它控件时(如TrayTip、ToolTip等窗口)不会显示探测边框线及信息有误;
        [修改]将坐标切换方式的“界面”2字改为“用户”,使坐标方式更直观,可在“控件”、“用户”、“屏幕”间切换;
        [增加]增加一个坐标切换方式“控件”,此方式对于无具体ID的控件的仍可尝试使用此坐标进行 ControlClick 点击;
        [增加]界面增加最小化到托盘及托盘图标的相关操作;
        [增加]增加捕获如下一些窗口信息:
           同进程窗口、父窗口;
           窗口文本、窗口隐藏文本;--已去除,没什么用,可以用控件文本取代;
           窗口样式、窗口扩展样式;
           控件样式、控件扩展样式、控件句柄;

100827 更新 (0.3版)
        [增加]增加热键及在置顶窗口中操作,不用拖移靶心,按 Ctrl+F9 可以直接探测,再按一次或按 Esc 可以停止。

100826 小更新  (0.2版)
        [修正]探测后的窗口在关闭后选择下拉框会造成界面的问题现已修正。感谢 佐子 发现此Bug
        [修改]坐标栏默认改为“界面”即用户坐标,切换方式改为右键点击,左键点击为复制。
        [增加]增加窗口标题栏及边框线宽度信息。
           其它一些细微的调整

100826        初发布 0.1 版
游客,如果您要查看本帖隐藏内容请回复

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

评分

参与人数 15金钱 +440 收起 理由
itqijian + 40 赞一个!
tubaba + 60 马不停蹄
fybhwsx + 40 感谢a版又更新!
YMNL + 20 很给力!
tjlzh + 10 很给力!

查看全部评分

发表于 2010-8-26 07:59:12 | 显示全部楼层
哇,,AFAN也出这个。。支持下。

评分

参与人数 1金钱 +30 收起 理由
afan + 30 谢谢支持

查看全部评分

发表于 2010-8-26 08:01:03 | 显示全部楼层
好东西哦,收藏了!!

评分

参与人数 1金钱 +30 收起 理由
afan + 30 谢谢支持

查看全部评分

发表于 2010-8-26 08:26:40 | 显示全部楼层
回复 1# afan

介面看起來更精簡了

測試為止  沒問題!

頂你一個

评分

参与人数 1金钱 +40 收起 理由
afan + 40 感谢测试

查看全部评分

发表于 2010-8-26 09:16:00 | 显示全部楼层
前辈很少直接出程序的哦!不过不出则已,一出惊人哦!

评分

参与人数 1金钱 +30 收起 理由
afan + 30 木子见笑了

查看全部评分

发表于 2010-8-26 10:11:14 | 显示全部楼层
一直为这个问题苦恼了很久 源码呢? 希望放出源码
发表于 2010-8-26 12:37:48 | 显示全部楼层
特殊控件能用吗?试试呵呵

评分

参与人数 1金钱 +25 收起 理由
afan + 25 估计不行,呵呵

查看全部评分

 楼主| 发表于 2010-8-26 14:11:39 | 显示全部楼层
哇,,AFAN也出这个。。支持下。
zcx880517 发表于 2010-8-26 07:59



    不知道论坛还有人出这个吗?没看到过哦~

回复  afan
介面看起來更精簡了
測試為止  沒問題!
...
xjdjpbp 发表于 2010-8-26 08:26


    感谢测试

前辈很少直接出程序的哦!不过不出则已,一出惊人哦!
水木子 发表于 2010-8-26 09:16


    小东东而已,呵呵

一直为这个问题苦恼了很久 源码呢? 希望放出源码
anchie 发表于 2010-8-26 10:11


    EXE文档而已,无源码。我的源码基本都放在提问交流区…

特殊控件能用吗?试试呵呵
menfan1 发表于 2010-8-26 12:37


    估计不行,呵呵~ 目前版本还在 0.1,以后能不能加强还不知道…
发表于 2010-8-26 14:57:39 | 显示全部楼层
回复 1# afan


    没其他人出吧,,早晨试了下。挺好用的。。
   能放出源码就更好了。。
发表于 2010-8-26 18:50:33 | 显示全部楼层
超版也发工具了,支持!!!!!!
 楼主| 发表于 2010-8-26 18:53:31 | 显示全部楼层
超版也发工具了,支持!!!!!!
131738 发表于 2010-8-26 18:50



    刚看到前辈发过一个脚本辅助工具自动脚本,so 准备修改一下我这个工具,让我这个工具可以更方便的为前辈的工具搭配使用
发表于 2010-8-26 18:56:27 | 显示全部楼层
刚看到前辈发过一个脚本辅助工具自动脚本,so 准备修改一下我这个工具,让我这个工具可以更方便的 ...
afan 发表于 2010-8-26 18:53


翘首以待。。。。。
发表于 2010-8-26 20:16:16 | 显示全部楼层
32 位 Win 7 没问题。。。。
 楼主| 发表于 2010-8-26 22:43:51 | 显示全部楼层
回复 13# 131738


    谢谢测试~
    顺便小更新一下,主要是看见前辈的复制比较麻烦,坐标栏默认改为“界面”即用户坐标,切换方式改为右键点击,左键点击为复制。

评分

参与人数 1金钱 +20 贡献 +1 收起 理由
xjdjpbp + 20 + 1 精華!

查看全部评分

发表于 2010-8-26 23:04:28 | 显示全部楼层

RE: 窗口信息探测器[小更新]

回复 14# afan

開詳情後

拖曳時候,上面跟不上下面= =

呵呵

建議Afan超版

當要探測試窗時(即拖曳),可以先把窗口信息探測器隱藏或者不要一直窗口至頂。

個人覺得這樣比較好操控
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-21 23:43 , Processed in 0.129872 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表