.版本 2 .子程序 遍历通知窗口, , , .局部变量 窗口管理器, 整数型 .局部变量 通知总对象, 整数型 .局部变量 弹窗对象, 整数型 .局部变量 窗体对象, 整数型 .局部变量 文本对象, 整数型 .局部变量 按钮确认, 整数型 .局部变量 按钮取消, 整数型 窗口管理器 = 内存_读整数型 (全局_进程句柄, #IFManager基址) .如果真 (窗口管理器 ≤ 65536) 挂机信息.加入文本 (自定义时间 () + “窗口管理器未就绪” + #换行符) 返回 () .如果真结束 通知总对象 = 内存_读整数型 (全局_进程句柄, 窗口管理器 + 1028) .如果真 (通知总对象 ≤ 65536) 挂机信息.加入文本 (自定义时间 () + “通知总对象未就绪” + #换行符) 返回 () .如果真结束 弹窗对象 = 内存_读整数型 (全局_进程句柄, 通知总对象 + 824) .如果真 (弹窗对象 ≤ 65536) 挂机信息.加入文本 (自定义时间 () + “通知框:未弹出,跳过遍历” + #换行符) 返回 () .如果真结束 窗体对象 = 内存_读整数型 (全局_进程句柄, 弹窗对象 + 816) .如果真 (窗体对象 ≤ 65536) 挂机信息.加入文本 (自定义时间 () + “通知框:未弹出,跳过遍历” + #换行符) 返回 () .如果真结束 .如果真 (内存_读整数型 (全局_进程句柄, 窗体对象 + 64) ≠ 1) 挂机信息.加入文本 (自定义时间 () + “通知框:未弹出,跳过遍历” + #换行符) 返回 () .如果真结束 挂机信息.加入文本 (自定义时间 () + “通知框:弹出” + #换行符) 文本对象 = 内存_读整数型 (全局_进程句柄, 弹窗对象 + 820) 按钮确认 = 内存_读整数型 (全局_进程句柄, 弹窗对象 + 824) 按钮取消 = 内存_读整数型 (全局_进程句柄, 弹窗对象 + 828) 挂机信息.加入文本 (自定义时间 () + “弹窗对象:” + 到文本 (弹窗对象) + #换行符) 挂机信息.加入文本 (自定义时间 () + “窗体对象:” + 到文本 (窗体对象) + “ 类型码:” + 到文本 (内存_读整数型 (全局_进程句柄, 窗体对象 + 8)) + #换行符) 挂机信息.加入文本 (自定义时间 () + “文本对象:” + 到文本 (文本对象) + “ 控件ID:” + 到文本 (内存_读整数型 (全局_进程句柄, 文本对象 + 12)) + #换行符) 挂机信息.加入文本 (自定义时间 () + “確認按钮:” + 到文本 (按钮确认) + “ 控件ID:” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮确认 + 12)) + “ 位置:” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮确认 + 40)) + “,” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮确认 + 44)) + “ 大小:” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮确认 + 48)) + “x” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮确认 + 52)) + #换行符) 挂机信息.加入文本 (自定义时间 () + “取消按钮:” + 到文本 (按钮取消) + “ 控件ID:” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮取消 + 12)) + “ 位置:” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮取消 + 40)) + “,” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮取消 + 44)) + “ 大小:” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮取消 + 48)) + “x” + 到文本 (内存_读整数型 (全局_进程句柄, 按钮取消 + 52)) + #换行符) .如果真 (内存_读整数型 (全局_进程句柄, 按钮取消 + 12) = 内存_读整数型 (全局_进程句柄, 按钮确认 + 12) + 1) 挂机信息.加入文本 (自定义时间 () + “按钮顺序校验:正常(確認=取消-1)” + #换行符) .如果真结束 挂机信息.加入文本 (自定义时间 () + “通知窗口遍历完成” + #换行符 + #换行符)