[原創]SuperWeChatPC開源開放開發者SDK-打造你的超級微信

anhkgg發表於2019-02-25

SuperWeChatPC開源開放開發者SDK
anhkgg(公眾號:漢客兒)
2019年2月25日

 

SuperWeChatPC剛開始僅僅只是PC微信多開工具,後來慢慢增加了更多功能,感謝朋友們的支援。

 

為了方便更多開發者能夠在PC微信做更多有意義的事情,現改變專案方向,提供兩個針對不同人群的功能。

  1. 普通使用者依然可以直接使用原來的多開工具,直接下載可執行程式即可。
  2. 針對開發者,提供WeChatSDK,開放操作微信的各種介面,可以進行二次開發,具體使用方法請看WeChatSDK開發指南(docs/sdk.md)。

SuperWeChatPC支援功能:

  1. 全版本無限多開
  2. 訊息防撤銷(>=2.6.6.25
  3. 語音訊息備份(>=2.6.6.28
  4. 訊息傳送介面(>=2.6.6.44

WeChatSDK介紹

WeChatSDK提供方便操作PC端微信的超級介面,提供包括多開、防撤銷、語音備份、訊息傳送、加好友等介面。第三方可以直接使用WeChatSDK來開發自己的應用,不用再在分析微信功能、協議上耗費精力,WeChatSDK替你完成所有這些事情。

 

 

WeChatSDK通過WeChatSDK.dll對外暴露介面,第三方只需要呼叫介面就能完成想要的功能。

 

WeChatSDK.dll內部通過RPC通訊和注入到微信程式的WeChatSDKCore.dll進行功能呼叫,支援多開微信功能的呼叫,微信間互不影響。

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使用方法。

 

最後,歡迎star、PR或提供意見建議,如果在使用中有什麼問題,請聯絡我。

 

專案地址:

 

https://github.com/anhkgg/SuperWeChatPC

 

開源不易,無數深夜的寒風需要你的點滴暖意。



[推薦]看雪企服平臺,提供安全分析、定製專案開發、APP等級保護、滲透測試等安全服務!

相關文章