企业微信hook接口

基本实现企业微信pc端所有功能。

1.登陆模块:

接收登录二维码,登录成功通知,退出通知

2.用户信息模块:

获取自己的信息,获取联系人信息

获取内部联系人列表,获取外部联系人列表,获取群聊列表,获取群成员列表,获取标签列表,获取标签成员列表。

3.好友操作模块: 搜索微信好友,添加搜索的微信好友,通过好友申请,删除好友

修改联系人备注,设置外部联系人手机号,设置联系人描述,设置外部联系人的标签

4.群操作模块: 创建群聊,退出群聊,转让群主,邀请好友进群移除群成员,修改群名,发布群公告,修改自己在群聊中的昵称添加群成员为好友,建群通知,成员进群通知,成员退群通知。

DLL文件说明

文件名

说明

WxLoader.dll

管理端,用于多开企业微信和与企业微信交互

WxWorkService.dll

客户端,用于注入企业微信内部,接收指令并发送数据给管理端

getWeChatVersion() //获取企业微信版本号
extern "C" _declspec(dllexport) int  __stdcall getWeChatVersion( char* ppcResult);//c++函数原型 返回的是字符串长度,用来截取字符串。
//传递一个数组对象30长度用来接收字符串,

SetCB() //注册回调函数
extern "C" __declspec(dllexport) void __stdcall  SetCB(MyAcceptCallBack acceptCallBack, MyReceiveCallBack receiveCallBack, MyCloseCallBack closeCallBack);//c++函数原型
MyAcceptCallBack(int clientId):客户端加入回调方法,这个参数是个自定义指针类型,可以传对应语言的回调函数地址,回调地址方法是int类型,客户端id。
acceptCallBack(int clientId, char* jsonData,int len):客户端发送消息回调函数,这个参数是个自定义指针类型,可以传递对应语言的回调地址,回调地址方法是客户端id、json数据、数据长度。
MyCloseCallBack(int clientId):客户端断开连接回调方法,这个参数是个自定义指针类型,可以传对应语言的回调函数地址,回调地址方法是int类型,客户端id。

openHpSocket()//开启管理端socket服务
extern "C" _declspec(dllexport) int __stdcall  openHpSocket();//c++函数原型

StopHpSocket()//关闭管理端socket服务(最好别用)
extern "C" _declspec(dllexport) int  __stdcall StopHpSocket();//c++函数原型

sendHpSocketData()//发送json消息
extern "C" _declspec(dllexport) void __stdcall sendHpSocketData(int clientId,char * msgData);//c++函数原型

openWechatMutexTwo()//直接打开微信注入
extern "C" _declspec(dllexport) int  __stdcall  openWechatMutexTwo(char * dllPath);//c++函数原型

OpenWXWorkIsLogin()//传入用户id并且打开企业微信进行注入
extern "C" _declspec(dllexport) int __stdcall OpenWXWorkIsLogin(char * dllPath, char * userid);
//参数简介:dllPath要注入的dll文件路径,userid已经登陆过的用户id,高级语言调用string类型参数传入。

OpenWXWorkIsLoginAndMac()//传入用户id以及登陆过的配置文件中的MAC地址,这个方法可以把其中一个登录过的配置文件保存,用来在任何设备上登录,只需要把设置的mac地址设置成登录成功的设备上的mac就可以。
extern "C" _declspec(dllexport) int __stdcall OpenWXWorkIsLoginAndMac(char * dllPath, char * userid, char * macadd);
//参数简介:dllPath要注入的dll文件路径,userid已经登陆过的用户id,高级语言调用string类型参数传入,
macAdd:已经登录过的企业微信配置文件Config.cfg中的LastMacAddresses,多个MAC用|分隔符隔开,示例:0 50 56 c0 0 1|0 50 56 c0 0 8|0 d0 f8 0 0 1|0 ff 49 bc f3 74|0 ff 68 10 62 76|38 0 25 5 a2 7b|38 0 25 5 a2 7c|38 0 25 5 a2 7f|3a 0 25 5 a2 7b|b0 25 aa 2e 95 44

int  __stdcall  openWechatMutexAndMac(char * dllPath, char * macadd);
//参数简介:dllPath要注入的dll文件路径,macAdd:已经登录过的企业微信配置文件Config.cfg中的LastMacAddresses,多个MAC用|分隔符隔开,示例:0 50 56 c0 0 1|0 50 56 c0 0 8|0 d0 f8 0 0 1|0 ff 49 bc f3 74|0 ff 68 10 62 76|38 0 25 5 a2 7b|38 0 25 5 a2 7c|38 0 25 5 a2 7f|3a 0 25 5 a2 7b|b0 25 aa 2e 95 44

UnInjectDll()//卸载dll(需要先发送type 108018的标识 用来关闭客户端连接,然后在调用卸载。)
extern "C" _declspec(dllexport) int __stdcall  UnInjectDll(char * dllPath,int pid)//c++函数原型

injectDll()//注入已经打开的企业微信dll
extern "C" _declspec(dllexport) int  __stdcall injectDll(char * dllPath);//c++函数原型

支持语言

c# c++ python java nodejs等

协助帮助