金手指开始任务前,需要先确定哪一个梦幻西游手游时空客户端窗口承担队长操作。窗口列表里没有目标、已经选中却没有绿色预览框、开始后日志提示截图失败,这三类现象看起来相似,实际原因并不相同。排查时如果一开始就修改识别阈值,往往会绕过真正的问题;更合适的顺序是先确认 Windows 是否向软件提供了有效窗口,再检查截图和坐标条件。

本文按照“窗口存在—选择正确—权限一致—画面可见—缩放稳定”的顺序整理。每完成一项就重新打开窗口选择器验证,不需要同时改动多项设置。这样既容易定位原因,也能避免把一次偶发现象当作固定配置。

第一步:确认客户端是可见窗口而不是最小化状态

窗口选择器枚举的是当前桌面上可见、带有有效窗口句柄的应用窗口。梦幻西游手游时空客户端如果仍在启动阶段、已经最小化到任务栏,或者窗口标题尚未创建完整,都可能暂时不出现在列表中。先把目标客户端恢复到桌面,等待内部画面渲染完成,再点击选择器里的刷新。

同时要区分“客户端窗口”和启动器、更新器、远程控制工具。标题相近并不代表窗口内容相同。金手指的选择器会显示应用内窗口列表,单击条目后锁定这一项,并通过目标窗口外沿的四条绿色细边提供预览。预览只用于确认选中了哪个窗口,不会在游戏客户区中央放置整块覆盖层。

窗口识别从可见性到日志复核的五步检查流程
窗口识别从可见性到日志复核的五步检查流程

如果列表里出现多个客户端,建议先把队长窗口移动到容易辨认的位置,再逐项预览。确认按钮提交的是已经明确锁定的条目,而不是鼠标刚好经过的另一项。完成选择后不要立刻把目标最小化,因为后续识别仍然需要读取窗口画面。

第二步:让金手指和目标窗口处于一致的权限层级

Windows 会隔离不同完整性级别的进程。目标客户端以管理员身份运行、金手指以普通身份运行时,窗口枚举可能仍能看到标题,但激活、输入或截图行为可能受限;反过来混用也会使排查变得复杂。最直接的做法是先完全退出两边,再用一致方式启动。

只有在目标客户端本身使用管理员身份时,才需要让金手指保持相同权限。不要一边已经打开任务流程,一边临时重新启动另一端;重新启动后窗口句柄会变化,应重新选择队长窗口。出现“之前能识别,重开客户端后失效”时,首先重新选择,而不是沿用旧会话中保存的窗口位置。

第三步:检查遮挡、桌面切换与远程窗口

当前实现以真实截图为识别输入。目标按钮被浏览器、聊天窗口、文件夹或金手指主界面遮住时,截图里看到的就是遮挡后的内容,模板自然找不到。任务运行后,软件会尽量压回意外恢复的自身窗口,但其他应用仍应由用户提前移开。

多显示器环境还要确认客户端没有处于正在切换虚拟桌面、锁屏或远程会话断开后的不可见状态。窗口矩形存在并不等于画面正在正常更新。可以把客户端置前,手动观察动画是否继续,再从金手指执行一次窗口预览。如果绿色细边位置正确而中央画面仍被别的窗口覆盖,先处理遮挡。

第四步:固定窗口大小后再检查 DPI 缩放

金手指已启用 Windows DPI 感知,并把关键截图与点击尽量统一在实际像素坐标中,但显示器缩放、窗口边框和远程桌面缩放仍会改变可见尺寸。排查阶段先把客户端固定在一个常用大小,不要一边运行一边反复拖动边缘。若在 125% 或 150% 缩放下出现偏移,记录系统缩放比例、客户端截图尺寸和日志中的窗口位置,再做对照。

这里需要区分两种故障:完全截不到目标窗口,通常与句柄、权限或可见状态相关;截图正常但目标按钮置信度低,才更接近模板尺寸或界面外观问题。前一种问题调低阈值没有作用,后一种问题也不应先用固定坐标代替识别。

第五步:从日志判断是选窗失败还是目标未出现

开始任务后先看最早的一条失败日志。若日志描述窗口无效、窗口矩形读取失败或截图失败,应回到窗口选择。若日志能够打印模板名称、候选分数或识别区域,说明截图链路已经工作,问题转为目标是否真的出现在当前界面。

可按下面的最小检查表复核:

  • 目标客户端已恢复并完整可见;
  • 选择器中明确锁定了队长窗口,绿色边框围住的是正确窗口;
  • 客户端和金手指权限层级一致;
  • 运行期间没有浏览器、聊天框或软件主界面遮挡客户区;
  • 客户端大小在测试期间保持不变;
  • 日志中的失败步骤与当前肉眼看到的界面一致。

仍然失败时保留一组可复现信息

排查记录不需要包含账号、QQ、卡密、IP、用户名或私聊内容。保留软件版本、Windows 缩放比例、窗口尺寸、失败步骤名称和已隐藏隐私的截图即可。不要只截最后一条“未找到”,还应包含失败前后数行日志,便于判断程序是在等待界面、重新截图,还是窗口已经失效。

窗口问题解决后,可以继续查看金手指使用教程核对任务选择和运行前准备。有关窗口移动后区域为什么需要重算,可阅读窗口相对坐标开发记录。这两类问题分开处理,通常比同时调整权限、缩放和阈值更快得到明确结论。