微信 4.1.12.55 下使用 easyChat 时,最开始遇到的问题是 UIAutomation 只能识别到微信外层 Qt 窗口,原本依赖的 mmui 控件树没有暴露,所以搜索联系人、发送消息都会超时。
后来通过 wechatauto-replica 的 UIA 热激活方式,让微信重新暴露 mmui::MainWindow 等控件,再启动 easyChat 后,原有的大部分 UIA 定位就可以继续使用。
另外还需要注意两点:
- easyChat 原来的显示/隐藏微信快捷键逻辑,在新版微信下可能会把已经显示的微信反而隐藏,建议优先检测并激活现有微信窗口,找不到时再用快捷键。
- 群聊 @成员 在 4.1.12.55 下需要适当增加等待时间,让成员候选列表加载完成后再确认,否则容易变成普通文本而不是真正的 @。
目前在我这边已经验证:普通发送、定时发送、@成员、定时@ 都可以正常使用。微信每次彻底重启后,需要重新激活一次 UIA,因此可以考虑在 easyChat 启动前自动执行 UIA 激活流程。
以上是我在 4.1.12.55 下的适配思路,供遇到相同问题的朋友参考。
微信 4.1.12.55 下使用 easyChat 时,最开始遇到的问题是 UIAutomation 只能识别到微信外层 Qt 窗口,原本依赖的 mmui 控件树没有暴露,所以搜索联系人、发送消息都会超时。
后来通过 wechatauto-replica 的 UIA 热激活方式,让微信重新暴露 mmui::MainWindow 等控件,再启动 easyChat 后,原有的大部分 UIA 定位就可以继续使用。
另外还需要注意两点:
目前在我这边已经验证:普通发送、定时发送、@成员、定时@ 都可以正常使用。微信每次彻底重启后,需要重新激活一次 UIA,因此可以考虑在 easyChat 启动前自动执行 UIA 激活流程。
以上是我在 4.1.12.55 下的适配思路,供遇到相同问题的朋友参考。