对于Autoit3不能识别的非标准控件。若想监控程序运行状态,可以参考用PixelChecksum,检测窗口变化情况进行判断。
;============检测窗口发生变化=======================
;等到区域167,186, 208,206发生变化
;$App = "要监控的程序句柄"
;获取初始校验和
$checksum = PixelChecksum(167,186, 208,206,1,$App)
;等待区域更改,每100ms检查一次区域以减少CPU负载
While $checksum = PixelChecksum(167,186, 208,206,1,$App)
Sleep(100)
WEnd
;发生变化时弹框提示(自行选择是否需要提示)
;MsgBox(0, "监控报告", "区域167,186, 208,206的东西已经改变!")
以下来自:http://www.autoit3.cn/Doc/ 在线文档
生成某区域象素的校验和.
PixelChecksum ( 左侧, 顶部, 右侧, 底部 [, 步进 [,句柄 [,模式]]] )
参数
左侧 | 矩形区域左侧的坐标. |
顶部 | 矩形区域顶部的坐标. |
右侧 | 矩形区域右侧的坐标. |
底部 | 矩形区域底部的坐标. |
步进 | [可选参数] 默认情况下每个象素都要校验一次,而此参数可跳过指定数量的象素才校验(可提升执行速度).例如,数值2表示每隔一个象素才校验一次.默认值为 1. 不推荐步进值超过 1 . |
句柄 | [可选参数] 目标窗口句柄. |
模式 | [可选参数] 默认 0 使用 ADLER 校检, 1 CRC32 校检. |
返回值
成功: | 返回指定区域的校验和. |
失败: | 返回 0. |