PC微信机器人,实现获取通讯录、发送文本、图片、文件、xml文章、分享名片消息
封装COM接口,可供Python、C#调用
微信电脑版3.5.0.46
微信电脑版3.6.0.18
主分支对应微信3.6.0.18版本,其他版本请查看对应分支。
Visual Studio 2019(平台配置:win32(x86))
通过逆向PC微信,定位到关键CALL,dll内联汇编调用
注册32位COM组件,供64位/32位进程外部调用
./CWeChatRobot
:COM组件的实现代码
./DWeChatRobot
:注入的DLL实现代码
./wxRobot
: 包含C#的调用示例
./wxRobot.py
:python示例文件
./Release/CWeChatRobot.exe
:编译的COM组件
./Release/DWeChatRobot.dll
:编译的DLL文件
./Release/WeChatTools.exe
:用于调试时注入或卸载DLL程序,具体参阅相关代码
以管理员权限执行以下命令:
# 安装
CWeChatRobot.exe /regserver
# 卸载
CWeChatRobot.exe /unregserver
Python:
参考wxRobot.py
C#:
参考Program.cs
已找到如下功能的CALL或HOOK位置:
- 检测好友状态(已添加的功能)
- 接收文本消息和各类xml消息(已添加的功能)
- 未加密图片数据
- 未加密聊天表情
- 语音消息(SILK_V3格式)
- 微信Duilib界面xml文件
暂时没有空闲时间开发上述功能,如果想开发相关功能请发邮件到ljc545w@qq.com
也欢迎您提交PR
- 使用SAFEARRAY返回通讯录列表,可正确显示好友昵称中的特殊符号
- README中添加目录说明
- 更新C#示例代码,添加好友列表的遍历示例
- 修改获取个人信息接口和发送文章接口,兼容老版wxid(未经测试,如有问题请提ISSUE)
- 添加接收消息的接口,可以写回调对消息进行处理(参考Python示例文件)
- 添加发送群艾特消息的接口(后续考虑添加根据群ID查询所有群成员接口)
请给作者一个star,感谢感谢
代码仅供交流学习使用,请勿用于非法用途和商业用途!如因此产生任何法律纠纷,均与作者无关!