Files
wx-win-agent/docs/validation/M1-2026-09-04.md
T

2.4 KiB
Raw Blame History

M1 技术验证验收记录(2026-09-04)

环境

  • Windows:10.0.19044,主机 DESKTOP-EGI7QCK
  • 用户会话:Rogee,Session 1,活动 console
  • 微信:4.1.8.29
  • 部署目录:C:\Users\Rogee\wx-agent
  • 默认测试目标:文件传输助手

Linux 检查

dotnet test tests/node-agent/WxAgent.Core.Tests -c Release
dotnet build WxAgent.sln -c Release -p:EnableWindowsTargeting=true
dotnet publish node-agent/WxAgent.Host -c Release -r win-x64 --self-contained true \
  -p:EnableWindowsTargeting=true -p:PublishSingleFile=true \
  -p:IncludeNativeLibrariesForSelfExtract=true -p:PublishTrimmed=false

结果:Core 测试 9/9 通过;Release 构建 0 warnings、0 errors;单文件发布成功。

真机结果

  • doctor:登录后主窗口、MainView 和 session_list 检测正常;未选择聊天时不再误报 UI 结构变化。
  • 文件传输助手:可按会话 AutomationId 直接激活;会话未出现时可通过搜索结果 AutomationId 激活。
  • chat send:唯一 ASCII 标记发送成功,随后 chat read --include-content 精确读回。
  • 输入法兼容:最初使用模拟键盘输入时观察到输入法组合态改变消息。改为 UIA ValuePattern 直接设置文本,并在发送前逐字读取校验;不一致时中止发送,不执行盲目重试。修复后发送和精确读回通过。
  • chat listen:监听期间由另一个 CLI 进程发送唯一标记;UIA 结构事件配合两秒低频轮询发现 1 条新消息。
  • smoke --timeout 45:doctor、脱敏 UI 树、唯一文本发送和读回确认全部通过;导出 168 个脱敏节点。
  • 微信重启恢复:停止所有 Weixin 进程并重新启动后,微信要求手机确认登录;用户正常确认后出现 5 个 Weixin 进程,CLI 无需重启服务即可重新附加,发送、读取、监听和消息级 smoke 再次通过。
  • Session 断开:RDP 会话断开时输入 API 返回 access denied/invalid handle;恢复为活动 console 后正常。该行为由 doctor/SessionLocked 边界约束,不尝试绕过桌面会话限制。

结论

M1 Go/No-Go:Go。

发送、读取、监听和恢复均通过 UIA 元素定位及实时边界中心兜底完成,没有维护固定绝对坐标。发送写操作只执行一次;若输入内容或发送结果无法确认,返回 ResultUnconfirmed,不自动重试。