README.md 2.8 KB
Newer Older
L
ljc545w 已提交
1
# 描述
L
ljc545w 已提交
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
PC微信机器人,实现以下功能:
1. 获取通讯录  
2. 发送文本、图片、文件、xml文章、名片、群艾特消息  
3. 根据wxid查询好友信息  
4. 根据群ID获取所有群成员wxid  
5. 检测好友状态(是否好友、被删除、被拉黑)  
6. 接收各类消息,可写回调函数进行处理  
7. 封装COM接口,方便使用自己喜欢的语言进行调用  

# 用途
1. 淘客发单  
2. 无痕清粉  
3. 微信公众号采集  
4. 聊天记录备份  
5. 其他你能想到的用途  

L
ljc545w 已提交
18
# 可用版本
L
ljc545w 已提交
19
微信电脑版**3.5.0.46**  
L
ljc545w 已提交
20
微信电脑版**3.6.0.18**  
L
ljc545w 已提交
21
主分支对应微信3.6.0.18版本,其他版本请查看对应分支。    
L
ljc545w 已提交
22
# 编译环境
L
ljc545w 已提交
23
**Visual Studio 2019**(平台配置:win32(x86))
L
ljc545w 已提交
24
# 原理
L
ljc545w 已提交
25 26
通过逆向PC微信,定位到关键CALL,dll内联汇编调用  
注册32位COM组件,供64位/32位进程外部调用  
L
ljc545w 已提交
27 28 29 30
# 目录说明
`./CWeChatRobot`:COM组件的实现代码  
`./DWeChatRobot`:注入的DLL实现代码  
`./wxRobot`:  包含C#的调用示例  
J
Jack Li 已提交
31
`./Python`:python示例和接口测试文件  
L
ljc545w 已提交
32
`./Release/CWeChatRobot.exe`:编译的COM组件  
L
ljc545w 已提交
33
`./Release/DWeChatRobot.dll`:编译的DLL文件  
L
ljc545w 已提交
34
`./Release/WeChatTools.exe`:用于调试时注入或卸载DLL程序,具体参阅相关代码  
L
ljc545w 已提交
35
# 注册COM
L
ljc545w 已提交
36
以管理员权限执行以下命令:  
L
ljc545w 已提交
37 38 39 40 41 42 43
```shell
# 安装
CWeChatRobot.exe /regserver
# 卸载
CWeChatRobot.exe /unregserver
```
# 调用
L
ljc545w 已提交
44
**Python:**  
J
Jack Li 已提交
45
参考[wxRobot.py](/Python/wxRobot.py)  
L
ljc545w 已提交
46 47
**C#:**  
参考[Program.cs](/wxRobot/Program.cs)
L
ljc545w 已提交
48
# 更多功能 
L
ljc545w 已提交
49
已找到如下功能的CALL或HOOK位置:  
L
ljc545w 已提交
50 51 52 53
1. 未加密图片数据  
2. 未加密聊天表情  
3. 语音消息(SILK_V3格式)  
4. 微信Duilib界面xml文件  
L
ljc545w 已提交
54

L
ljc545w 已提交
55
暂时没有空闲时间开发上述功能,如果想开发相关功能请发邮件到ljc545w@qq.com  
L
ljc545w 已提交
56
**也欢迎您提交PR**  
L
ljc545w 已提交
57 58
# 更新记录
## 2022.04.01
L
ljc545w 已提交
59 60
1. 使用SAFEARRAY返回通讯录列表,可正确显示好友昵称中的特殊符号  
2. README中添加目录说明  
L
ljc545w 已提交
61 62 63 64
3. 更新C#示例代码,添加好友列表的遍历示例  
## 2022.04.11  
1. 修改获取个人信息接口和发送文章接口,兼容老版wxid(未经测试,如有问题请提ISSUE)  
2. 添加接收消息的接口,可以写回调对消息进行处理(参考Python示例文件)  
L
ljc545w 已提交
65
## 2022.04.12
L
ljc545w 已提交
66 67 68
1. 添加发送群艾特消息的接口  
## 2022.04.12
1. 添加通过群ID获取所有群成员wxid接口  
L
ljc545w 已提交
69 70
## 2022.04.13
1. 更新群艾特接口,可同时艾特多人  
L
ljc545w 已提交
71 72 73 74
## 2022.04.18
1. 添加获取数据库句柄接口(部分句柄,获取全量句柄需Hook)  
2. 添加执行SQL命令接口  
3. 添加在线数据库备份接口  
L
ljc545w 已提交
75
# 打赏作者
L
ljc545w 已提交
76
请给作者一个star,感谢感谢  
L
ljc545w 已提交
77
# 免责声明
L
ljc545w 已提交
78
代码仅供交流学习使用,请勿用于非法用途和商业用途!如因此产生任何法律纠纷,均与作者无关!