SuperWeChatPC开源开放开发者SDK-打造你的超级微信

WeChatSDK提供方便操作PC端微信的超级接口,提供包括多开、防撤销、语音备份、消息发送、加好友等接口。第三方可以直接使用WeChatSDK来开发自己的应用,不用再在分析微信功能、协议上耗费精力,WeChatSDK替你完成所有这些事情。

WeChatSDK通过WeChatSDK.dll对外暴露接口,第三方只需要调用接口就能完成想要的功能。

WeChatSDK.dll内部通过RPC通信和注入到微信进程的WeChatSDKCore.dll进行功能调用,支持多开微信功能的调用,微信间互不影响。

## 普通用户使用

持续更新版本,你可以直接点击SuperWeChatPC进行下载,下载后解压点击“bin”目录,可以直接使用里面的exe程序,也可以解压最新版本的压缩包,然后点击压缩包里的程序。支持多开,支持防消息撤销,支持语音消息备份等功能。

## WeChatSDK使用

复制WeChatSDK目录中的sdk.hWeChatSDK.dll以及WeChatSDK.lib(或者显示调用接口)到自己项目中,然后调用sdk.h中的接口定义进行代码开发即可。

发布时需要把所有模块都同时发布出去,包括WeChatSDK.dllWeChatSDKCore.dllWeChatRs.dllWeChatRc.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使用方法。

另外同步发布Python版本的接口,具体使用见src/WeChatSDKPy/sdk.py

wxsdk = WXSDK()
print(wxsdk.WXOpenWechat())
input("wait for...")
print(wxsdk.WXIsWechatAlive())
print(wxsdk.WXIsWechatSDKOk())
print(wxsdk.WXInitialize())
input("wait for...")
print(wxsdk.WXSendTextMsg("wxid_n11111", "This is a python sdk test msg"))

开源作者:anhkgg
项目地址:https://github.com/anhkgg/SuperWeChatPC

感谢每一位愿意分享自己劳动成果的人。

点赞
  1. 大愚说道:

    大佬就是大佬 :razz:

  2. moli说道:

    python用Win10下anaconda的32位跑,juperter,可以打开微信登录,
    print(wxsdk.WXIsWechatAlive())=1;
    print(wxsdk.WXIsWechatSDKOk())=1;
    print(wxsdk.WXInitialize())=0;
    wxsdk.WXSendTextMsg("wxid_n11111", "This is a python sdk test msg")=50;
    接收也是50;
    问题出哪里了呢。发不出去。是初始化的问题吗?麻烦了

发表评论

电子邮件地址不会被公开。必填项已用 * 标注