SuperWeChatPC 开源开放开发者 SDK
anhkgg(公众号:汉客儿)
2019 年 2 月 25 日
项目地址:
https://github.com/anhkgg/SuperWeChatPC
SuperWeChatPC
刚开始仅仅只是PC
微信多开工具,后来慢慢增加了更多功能,感谢朋友们的支持。
为了方便更多开发者能够在PC
微信做更多有意义的事情,现改变项目方向,提供两个针对不同人群的功能。
WeChatSDK
,开放操作微信的各种接口,可以进行二次开发,具体使用方法请看 WeChatSDK 开发指南(docs/sdk.md
)。SuperWeChatPC
支持功能:
>=2.6.6.25
)>=2.6.6.28
)>=2.6.6.44
)WeChatSDK
提供方便操作PC
端微信的超级接口,提供包括多开、防撤销、语音备份、消息发送、加好友等接口。第三方可以直接使用WeChatSDK
来开发自己的应用,不用再在分析微信功能、协议上耗费精力,WeChatSDK
替你完成所有这些事情。
WeChatSDK
通过WeChatSDK.dll
对外暴露接口,第三方只需要调用接口就能完成想要的功能。
WeChatSDK.dll
内部通过RPC
通信和注入到微信进程的WeChatSDKCore.dll
进行功能调用,支持多开微信功能的调用,微信间互不影响。
复制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
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
使用方法。
最后,欢迎 PR 或提供意见建议,如果在使用中有什么问题,请联系我(公众号:汉客儿)。
项目地址:
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.