求助
功能说明:该程序是一个基于易语言开发的Windows桌面应用,核心功能是自动化操作嵌入在易语言“超文本浏览框”控件中的Internet Explorer(IE)内核网页。程序通过Windows API底层技术(包括GetClassName、GetWindow、RegisterWindowMessage、SendMessageTimeout及OLEACC.dll中的ObjectFromLresult等)精准定位IE内核渲染窗口(“Internet Explorer_Server”类名句柄),并获取其DOM文档对象(document),进而遍历页面中所有元素,筛选出type为"button"、"submit"或"reset"的HTML按钮控件,统一存入全局数组“按钮对象”。用户点击界面按钮(_按钮1_被单击)后,程序自动执行:① 获取超文本浏览框的窗口句柄;② 逐层查找子窗口,定位到IE_Server句柄;③ 获取网页document对象;④ 提取body.all.tags("input")集合;⑤ 遍历所有input元素,识别并缓存符合条件的按钮;⑥ 调用“按钮_取索引”子程序,根据传入的名称(name)或ID(id)字符串(如"login_button")快速匹配首个目标按钮索引;⑦ 最终调用“按钮_点击”子程序触发对应按钮的click事件——若该按钮type为"submit",则同步提交所在HTML表单。整个流程无需模拟鼠标/键盘,而是直接调用DOM原生方法,具备高可靠性、低延迟和强兼容性(专适IE内核,适用于老旧政务、企业内部系统等依赖IE ActiveX的场景)。程序本质是一个轻量级、面向IE内嵌Web控件的自动化交互辅助工具,典型用途包括自动登录、表单提交、批量操作等无人值守网页交互任务。
======窗口程序集1
| |
| |------ 取网页对象
| |
| |------ 取网页句柄
| |
| |------ _按钮1_被单击
| |
| |------ 按钮_取索引
| |
| |------ 按钮_点击
| |
| |
======调用的Dll
| |
| |---[dll]------ ObjectFromLresult
| |
| |---[dll]------ RegisterWindowMessage
| |
| |---[dll]------ SendMessageTimeout
| |
| |---[dll]------ GetWindow
| |
| |---[dll]------ GetClassName
======窗口程序集1
| |
| |------ 取网页对象
| |
| |------ 取网页句柄
| |
| |------ _按钮1_被单击
| |
| |------ __启动窗口_创建完毕
| |
| |------ _按钮2_被单击
| |
| |
======调用的Dll
| |
| |---[dll]------ ObjectFromLresult
| |
| |---[dll]------ RegisterWindowMessage
| |
| |---[dll]------ SendMessageTimeout
| |
| |---[dll]------ GetWindow
| |
| |---[dll]------ GetClassName
======窗口程序集1
| |
| |------ _按钮1_被单击
| |
| |------ __启动窗口_创建完毕
======窗口程序集1
| |
| |------ 取网页对象
| |
| |------ 取网页句柄
| |
| |------ _按钮1_被单击
| |
| |------ __启动窗口_创建完毕
| |
| |
======调用的Dll
| |
| |---[dll]------ ObjectFromLresult
| |
| |---[dll]------ RegisterWindowMessage
| |
| |---[dll]------ SendMessageTimeout
| |
| |---[dll]------ GetWindow
| |
| |---[dll]------ GetClassName
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。