本文面向梦幻西游手游时空客户端相关的桌面自动化开发与使用场景。金手指的判断依赖当前窗口截图、窗口矩形、模板文件和可复核日志,具体表现会受到客户端画面、Windows 缩放、窗口位置及运行权限影响。下面只讨论当前项目代码中已经存在的结构和排查方法,不把示意图冒充软件截图,也不虚构用户案例、排名、收录量或效果数据。关键内容即使不加载图片也能通过正文理解。
启动前确认运行环境
启动前确认运行环境
首次运行先确认程序能打开、配置文件路径可读、目标窗口已经启动且没有被其他窗口遮挡。若程序和目标窗口处于不同权限层级,前台激活与输入发送可能出现差异。启动阶段只做环境检查,不要在窗口尚未稳定时直接开始长任务。
选择窗口后检查矩形
选择目标窗口后记录标题、句柄、外框矩形和客户区尺寸。多开时逐个确认,不要把第一项默认当成队长窗口。窗口被移动或调整大小后,应重新选择或触发矩形刷新;缺少真实入口按钮时重新打开面板重试,不能用固定屏幕位置代替入口。
路径和模板要先验证
模板、图片和说明文件的路径应先做存在性检查。读取失败、格式错误或透明通道不匹配时,应在日志中显示文件名和阶段。模板加载成功也不代表与当前缩放适配,首次运行要观察候选尺寸和搜索区域,再决定是否进入任务步骤。
任务开始后观察日志
任务启动后先观察一轮日志和画面,确认窗口前台、截图区域、识别结果和动作状态相互对应。重复动作前先观察状态,结果确认要有画面或文字证据。等待过程应分成可中断的小段,避免长等待让停止按钮失去及时响应。
停止控制要随时可用
停止任务时应停止后续动作、释放鼠标输入、结束等待并清理临时状态。停止后检查窗口是否仍被捕获、左键是否释放、线程是否退出以及日志是否写入结束原因。首次运行的目标是建立可复核的流程,不是一次覆盖所有任务和异常。

排查时建议一次只改变一个条件,并保留窗口矩形、截图时间、识别框、匹配分数和最终动作。若要了解窗口移动后的相对识别,可阅读窗口相对识别说明;需要了解多尺度模板时,可参考多尺度模板匹配实践。
复核记录怎么写
首次运行还应检查日志目录是否可写,以及任务停止后是否留下完整结束记录。日志若无法保存,后续排错只能依赖猜测。建议先执行一个短步骤,确认窗口选择、截图、识别、输入、验证和停止六个环节都能留下记录,再进入较长的任务组合。
配置检查通过后也要保留人工观察点。窗口标题、句柄、客户区尺寸、模板路径和当前任务阶段是最有价值的五类信息。出现异常时先根据这些信息定位层级,再决定是否调整权限、缩放或素材,避免把所有问题归结为识别阈值。
首次配置完成后,把能确认的项目标成已验证,把尚未验证的项目保留为空,而不要用默认值代替事实。下一次运行从未验证项开始,能减少重复操作并让问题边界保持清楚。\n\n本节内容应与实际运行日志一起核对,页面文字用于说明方法,具体结果以当前环境中的截图、窗口信息和代码行为为准。\n\n排查结束后再恢复完整任务链,先确认当前窗口、当前阶段与当前模板条件没有变化。\n\n实际发布前还要检查标题、摘要、canonical、封面图、图注、站内链接、移动端换行和页面 HTTP 状态,发布后的 URL 以站点返回结果为准。\n\n检查清单应逐项打勾并保留日期,后续复盘直接对照。

