mirror of
https://github.com/ttttupup/wxhelper.git
synced 2024-11-23 02:39:25 +08:00
修改hook消息接口 close #5
This commit is contained in:
parent
2f1793b2b1
commit
911f87211c
64
README.md
64
README.md
@ -311,6 +311,38 @@ vcpkg
|
|||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
#### 10.取消hook消息**
|
||||||
|
###### 接口功能
|
||||||
|
> 取消hook消息
|
||||||
|
|
||||||
|
###### 接口地址
|
||||||
|
> [/api/?type=10](/api/?type=10)
|
||||||
|
|
||||||
|
###### HTTP请求方式
|
||||||
|
> POST JSON
|
||||||
|
|
||||||
|
###### 请求参数
|
||||||
|
|参数|必选|类型|说明|
|
||||||
|
|---|---|---|---|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###### 返回字段
|
||||||
|
|返回字段|字段类型|说明 |
|
||||||
|
|---|---|---|
|
||||||
|
|code|int|返回状态,1成功, 0失败|
|
||||||
|
|result|string|成功提示|
|
||||||
|
|
||||||
|
|
||||||
|
###### 接口示例
|
||||||
|
入参:
|
||||||
|
``` javascript
|
||||||
|
|
||||||
|
```
|
||||||
|
响应:
|
||||||
|
``` javascript
|
||||||
|
{"code":1,"result":"OK"}
|
||||||
|
```
|
||||||
|
|
||||||
#### 11.hook图片**
|
#### 11.hook图片**
|
||||||
###### 接口功能
|
###### 接口功能
|
||||||
@ -348,6 +380,38 @@ vcpkg
|
|||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
#### 12.取消hook图片**
|
||||||
|
###### 接口功能
|
||||||
|
> 取消hook图片
|
||||||
|
|
||||||
|
###### 接口地址
|
||||||
|
> [/api/?type=12](/api/?type=12)
|
||||||
|
|
||||||
|
###### HTTP请求方式
|
||||||
|
> POST JSON
|
||||||
|
|
||||||
|
###### 请求参数
|
||||||
|
|参数|必选|类型|说明|
|
||||||
|
|---|---|---|---|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
###### 返回字段
|
||||||
|
|返回字段|字段类型|说明 |
|
||||||
|
|---|---|---|
|
||||||
|
|code|int|返回状态,1成功, 0失败|
|
||||||
|
|result|string|成功提示|
|
||||||
|
|
||||||
|
|
||||||
|
###### 接口示例
|
||||||
|
入参:
|
||||||
|
``` javascript
|
||||||
|
|
||||||
|
```
|
||||||
|
响应:
|
||||||
|
``` javascript
|
||||||
|
{"code":1,"result":"OK"}
|
||||||
|
```
|
||||||
|
|
||||||
#### 17.删除好友**
|
#### 17.删除好友**
|
||||||
###### 接口功能
|
###### 接口功能
|
||||||
|
@ -267,7 +267,11 @@ void api_handle(mg_http_message *hm, struct mg_connection *c, string &ret) {
|
|||||||
}
|
}
|
||||||
case WECHAT_MSG_START_HOOK: {
|
case WECHAT_MSG_START_HOOK: {
|
||||||
int port = get_http_req_param_int(hm, j_param, "port", is_post);
|
int port = get_http_req_param_int(hm, j_param, "port", is_post);
|
||||||
int success = HookRecvMsg(port);
|
wstring ip = get_http_req_param(hm, j_param, "ip", is_post);
|
||||||
|
string client_ip = Wstring2String(ip);
|
||||||
|
char ip_cstr[16];
|
||||||
|
strcpy_s(ip_cstr,client_ip.c_str());
|
||||||
|
int success = HookRecvMsg(ip_cstr,port);
|
||||||
json ret_data = {{"code", success}, {"result", "OK"}};
|
json ret_data = {{"code", success}, {"result", "OK"}};
|
||||||
ret = ret_data.dump();
|
ret = ret_data.dump();
|
||||||
break;
|
break;
|
||||||
|
@ -20,6 +20,7 @@ using namespace std;
|
|||||||
#define CLIENT_IP "127.0.0.1"
|
#define CLIENT_IP "127.0.0.1"
|
||||||
static int kServerPort = 0;
|
static int kServerPort = 0;
|
||||||
static int kMessageHooked = FALSE;
|
static int kMessageHooked = FALSE;
|
||||||
|
static char kServerIp[16]= "127.0.0.1";
|
||||||
static DWORD kWeChatWinBase = GetWeChatWinBase();
|
static DWORD kWeChatWinBase = GetWeChatWinBase();
|
||||||
|
|
||||||
static char kOriginReceMsgAsmCode[5] = {0};
|
static char kOriginReceMsgAsmCode[5] = {0};
|
||||||
@ -59,10 +60,12 @@ BOOL SendBySocket(const char *buffer, size_t len) {
|
|||||||
memset(&client_addr, 0, sizeof(client_addr));
|
memset(&client_addr, 0, sizeof(client_addr));
|
||||||
client_addr.sin_family = AF_INET;
|
client_addr.sin_family = AF_INET;
|
||||||
client_addr.sin_port = htons((u_short)kServerPort);
|
client_addr.sin_port = htons((u_short)kServerPort);
|
||||||
InetPtonA(AF_INET, CLIENT_IP, &client_addr.sin_addr.s_addr);
|
InetPtonA(AF_INET, kServerIp, &client_addr.sin_addr.s_addr);
|
||||||
if (connect(client_socket, reinterpret_cast<sockaddr *>(&client_addr),
|
if (connect(client_socket, reinterpret_cast<sockaddr *>(&client_addr),
|
||||||
sizeof(sockaddr)) < 0) {
|
sizeof(sockaddr)) < 0) {
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
|
cout << "kServerIp:" << kServerIp <<endl;
|
||||||
|
cout << "port:" << kServerPort <<endl;
|
||||||
cout << "connect error,"
|
cout << "connect error,"
|
||||||
<< " errno:" << errno << endl;
|
<< " errno:" << errno << endl;
|
||||||
#endif
|
#endif
|
||||||
@ -190,8 +193,9 @@ _declspec(naked) void handle_sync_msg() {
|
|||||||
/// @brief hook any address address+0x5
|
/// @brief hook any address address+0x5
|
||||||
/// @param port 端口
|
/// @param port 端口
|
||||||
/// @return 成功返回1,已经hook返回2,失败返回-1
|
/// @return 成功返回1,已经hook返回2,失败返回-1
|
||||||
int HookRecvMsg(int port) {
|
int HookRecvMsg(char* client_ip,int port) {
|
||||||
kServerPort = port;
|
kServerPort = port;
|
||||||
|
strcpy_s(kServerIp,client_ip);
|
||||||
kWeChatWinBase = GetWeChatWinBase();
|
kWeChatWinBase = GetWeChatWinBase();
|
||||||
if (!kWeChatWinBase) {
|
if (!kWeChatWinBase) {
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
/// @brief hook any address address+0x5
|
/// @brief hook any address address+0x5
|
||||||
/// @param port 端口
|
/// @param port 端口
|
||||||
/// @return 成功返回1,已经hook返回2
|
/// @return 成功返回1,已经hook返回2
|
||||||
int HookRecvMsg(int port);
|
int HookRecvMsg(char* client_ip,int port);
|
||||||
|
|
||||||
int UnHookRecvMsg();
|
int UnHookRecvMsg();
|
||||||
#endif
|
#endif
|
Loading…
Reference in New Issue
Block a user