SuperWeChatPC刚开始仅仅只是PC微信多开工具,后来慢慢增加了更多功能,感谢朋友们的支持。
为了方便更多开发者能够在PC微信做更多有意义的事情,现改变项目方向,提供两个针对不同人群的功能。
普通用户依然可以直接使用原来的多开工具,直接下载可执行程序即可。
针对开发者,提供WeChatSDK,开放操作微信的各种接口,可以进行二次开发,具体使用方法请看WeChatSDK开发指南(docs/sdk.md)。
SuperWeChatPC支持功能:
全版本无限多开
消息防撤销(>=2.6.6.25)
语音消息备份(>=2.6.6.28)
消息发送接口(>=2.6.6.44)
WeChatSDK介绍
WeChatSDK提供方便操作PC端微信的超级接口,提供包括多开、防撤销、语音备份、消息发送、加好友等接口。第三方可以直接使用WeChatSDK来开发自己的应用,不用再在分析微信功能、协议上耗费精力,WeChatSDK替你完成所有这些事情。
WeChatSDK通过WeChatSDK.dll对外暴露接口,第三方只需要调用接口就能完成想要的功能。
WeChatSDK.dll内部通过RPC通信和注入到微信进程的WeChatSDKCore.dll进行功能调用,支持多开微信功能的调用,微信间互不影响。
WeChatSDK使用
复制WeChatSDK目录中的sdk.h、WeChatSDK.dll以及WeChatSDK.lib(或者显示调用接口)到自己项目中,然后调用sdk.h中的接口定义进行代码开发即可。
发布时需要把所有模块都同时发布出去,包括WeChatSDK.dll,WeChatSDKCore.dll,WeChatRs.dll,WeChatRc.dll。
源码目录介绍:
bin //老版本
docs //文档
sdk //vs2017 x86编译完成的sdk模块
src
|- common //公共目录
|- WeChatSDK //WeChatSDK.dll
|- WeChatRc //WeChatRs.dll
|- WeChatRs //WeChatRc.dll
|- WeChatSDKCore //WeChatSDKCore.dll
|- WeChatSDKTest //SDK示例,普通用户多开工具
编译顺序(vs2017 x86):
WeChatRs -> WeChatRc -> WeChatSDK -> WeChatSDKCore
WeChatSDK接口
int WXOpenWechat();
启动微信,支持多开。返回值是微信进程pid,需保存用于后续接口调用。pid即代表多开的每个微信进程,指定pid调用接口使用操作对应的微信。
bool WXIsWechatAlive(DWORD pid);
检查微信是否启动成功,pid是WXOpenWechat返回值。返回true为成功。
int WXInitialize(DWORD pid);
初始化WeChatSDK。在调用其他接口之前需要调用此接口,否则SDK无法正常工作。pid是WXOpenWechat返回值。返回0表示成功。由于涉及到注入功能,如引起杀毒软件误报,请通过。
int WXUninitialize(DWORD pid);
反初始化WeChatSDK,卸载SDK,一般不需要调用。pid是WXOpenWechat返回值。返回0表示成功。
bool WXIsWechatSDKOk(DWORD pid);
检查初始化WeChatSDK是否成功。在检查到成功之后才能调用其他接口,否则SDK无法正常工作。pid是WXOpenWechat返回值。返回true表示成功。
int WXAntiRevokeMsg(DWORD pid);
开启防消息撤销功能。pid是WXOpenWechat返回值。返回0表示成功。
int WXUnAntiRevokeMsg(DWORD pid);
关闭防消息撤销功能。pid是WXOpenWechat返回值。返回0表示成功。
int WXSaveVoiceMsg(DWORD pid, const wchar_t* path);
开启备份语音功能。pid是WXOpenWechat返回值,path指定语音备份位置的目录全路径。返回0表示成功。
int WXUnSaveVoiceMsg(DWORD pid);
关闭备份语音功能。pid是WXOpenWechat返回值。返回0表示成功。
int WXSendTextMsg(DWORD pid, const wchar_t* wxid, const wchar_t* msg);
发送文字消息接口,支持表情[x]。pid是WXOpenWechat返回值,wxid指定要发送对象的wxid,msg指定要发送内容。返回0表示成功。后续会提供通过微信名或昵称获取wxid接口。
//void WXSendGroupTextMsg(); //暂不支持
//void WXSendImageMsg(); //暂不支持
//void WXSendVoiceMsg(); //暂不支持
//void WXAddFriend(); //暂不支持
//void WXAddGroupFriends(); //暂不支持
//void WXAcceptFriend(); //暂不支持
//void WXDeleteFriend(); //暂不支持
//void WXGetUserWxid(); //暂不支持
详细请参考WeChatSDKTest使用方法。
最后,欢迎star、PR或提供意见建议,如果在使用中有什么问题,请联系我。
项目地址:
https://github.com/anhkgg/SuperWeChatPC
开源不易,无数深夜的寒风需要你的点滴暖意。
作者简介
anhkgg(angelxf),某厂安全开发工程师,曾主要研究方向是windows内核,rootkit;对逆向、破解稍有涉足;能前端,可后台;用过python,也玩rust;挖过洞,淌过坑;杂而不精,博而不纯,汗颜
Angelxf 更多精彩文章:
微信PC端技术研究(2)-保存聊天语音
一种通用DLL劫持技术研究
微信(WeChat)电脑端多开分析+源码
死磕python字节码-手工还原python源码
原文链接:https://bbs.pediy.com/thread-249635.htm
转载请注明:转自看雪学院
更多阅读:
硬上MTK平板
简单分析南邮实训平台pwn方向第二题 - Stack Overflow
XCTF 攻防世界 reverse 萌新入坑 alexctf-2017 re2-cpp-is-awesome writeup
Android ART invoke 代码生成