WeChatHelper3.1.0.58.dll接口适用所有语言,今天我来讲一下用C#来做个实例调用。

第一步:下载并引用Newtonsoft.Json.dll类库

因为本接口是基于HTTP+JSON的,所有我们先下载c#开源的类库Newtonsoft.Json(下载地址 http://json.codeplex.com/ )

在项目中引用Newtonsoft.Json.dll(根据自己的版本,我用的是VS2017 版本是4.5)

第二步:创建HTTP类

HttpHelper.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.IO;
namespace WechatHelper
{class HttpHelper{public string GetData(string url){string data = "";try{HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);request.Method = "GET";HttpWebResponse response = (HttpWebResponse)request.GetResponse();Stream ResponseStream = response.GetResponseStream();StreamReader StreamReader = new StreamReader(ResponseStream, Encoding.GetEncoding("utf-8"));data = StreamReader.ReadToEnd();StreamReader.Close();ResponseStream.Close();}catch (Exception ex){}finally{}return data;}public string GetPostData(string url, string param){string data = "";try{HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);request.Method = "POST";request.ContentType = "application/json;charset=utf-8";if (!string.IsNullOrEmpty(param)){Stream RequestStream = request.GetRequestStream();byte[] bytes = Encoding.UTF8.GetBytes(param);RequestStream.Write(bytes, 0, bytes.Length);RequestStream.Close();}HttpWebResponse response = (HttpWebResponse)request.GetResponse();Stream ResponseStream = response.GetResponseStream();StreamReader StreamReader = new StreamReader(ResponseStream, Encoding.GetEncoding("utf-8"));data = StreamReader.ReadToEnd();StreamReader.Close();ResponseStream.Close();}catch (Exception ex){}finally{}return data;}}
}

第三步:创建JsonHelper类

本类只对聊天记录做处理,其它的可以照此方法。

JsonHelper.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Newtonsoft.Json;
using WechatHelper.RecordObject;
namespace WechatHelper
{class JsonHelper{/// <summary>/// 获取聊天记录数据/// </summary>/// <param name="jsonText">JSON文本数据</param>/// <returns></returns>static public RecordObject.RecordObject GetRecords(string jsonText){RecordObject.RecordObject recordObject= JsonConvert.DeserializeObject<RecordObject.RecordObject>(jsonText);return recordObject;}}
}

第四步:创建聊天记录对象

聊天记录对象是根据聊天记录数据和类型创建的,我们来看一下聊天记录的JSON数据结构:

{"cmdid": 7,"maxid": 5,"count": 75,"status": "ok","qq": "2376140244","data": [
{"localId": 42,"MsgSvrID": "2062239765205091112","StrTalker": "18618087204@chatroom","StrContent": "<?xml version=\"1.0\"?>\n<msg>\n\t<img aeskey=\"611118464e36d48e86c891c79e25b07c\" encryver=\"1\" cdnthumbaeskey=\"611118464e36d48e86c891c79e25b07c\" cdnthumburl=\"3058020100044c304a0201000204be9026a302032f5d0302045938f0b702045fefffb90425617570696d675f383038376264343062646134646465335f31363039353634303839373537020401090a020201000405004c56fb00\" cdnthumblength=\"4043\" cdnthumbheight=\"140\" cdnthumbwidth=\"56\" cdnmidheight=\"0\" cdnmidwidth=\"0\" cdnhdheight=\"0\" cdnhdwidth=\"0\" cdnmidimgurl=\"3058020100044c304a0201000204be9026a302032f5d0302045938f0b702045fefffb90425617570696d675f383038376264343062646134646465335f31363039353634303839373537020401090a020201000405004c56fb00\" length=\"24332\" md5=\"692efd877bce4ad7dc41becca0d2278d\" hevc_mid_size=\"24332\" />\n</msg>\n","CreateTime": 1609564091,"IsSender": 0,"type": 3,"SubType": 0,"CompressContent": "","BytesExtra": {"wxid": "wxid_y7hw81zn588b12","thumb": "keepmoving8\\FileStorage\\Image\\Thumb\\2021-01\\e03c67108d6c39c020c48696dbd36916_t.dat","image": "keepmoving8\\FileStorage\\Image\\2021-01\\4953c7f182c4741eec97c9ab6bfe1eb4.dat","video": ""}},{"localId": 43,"MsgSvrID": "3036343329427015238","StrTalker": "2656683682@chatroom","StrContent": "收满不收弹头40","CreateTime": 1609564122,"IsSender": 0,"type": 1,"SubType": 0,"CompressContent": "","BytesExtra": {"wxid": "wxid_87rw855vmv4h22","thumb": "","image": "","video": ""}},{"localId": 44,"MsgSvrID": "6558585969683208319","StrTalker": "JI282940039","StrContent": "要的滴滴我","CreateTime": 1609564128,"IsSender": 0,"type": 1,"SubType": 0,"CompressContent": "","BytesExtra": {"wxid": "","thumb": "","image": "","video": ""}}]
}

上面记录中有三种记录:

1.群图片消息,群发送的微信ID和图片的地址已显示在扩展数据中。

2.群文本消息,群发送的微信ID显示在扩展数据中。

3.普通好友文本消息,扩展数据都是空。

根据JSON数据结构,我们在c#中构造聊天记录对象模型:

RecordObject.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;/// <summary>
/// 聊天记录对象
/// </summary>
namespace WechatHelper.RecordObject
{/// <summary>/// 聊天记录主要数据/// </summary>public class data{public int localId { get; set; }//记录IDpublic string MsgSvrID { get; set; }//消息IDpublic string StrTalker { get; set; }//群消息public string StrContent { get; set; } //内容public int CreateTime { get; set; }//创建时间public int IsSender { get; set; }//是否自己发送public int type { get; set; }//消息类型public int SubType { get; set; }//子类型public string CompressContent { get; set; } //这里为转账金额信息,有+与-表示:收到与转出   public BytesExtra BytesExtra { get; set; }}/// <summary>/// 聊天记录扩展数据/// </summary>public class BytesExtra{public string wxid { get; set; }//      群消息时发送者微信ID"public string thumb { get; set; }   //     图片类型时缩微图路径"public string image { get; set; }// 图片或视频类型时图片路径"public string mp4 { get; set; }//视频类型时MP4路径"}/// <summary>/// 聊天记录对象/// </summary>public class RecordObject{public int cmdid { get; set; }public int maxid { get; set; }//记录索引public int count { get; set; }//信息条数public string qq { get; set; }//本人QQpublic string status { get; set; }//状态public List<data> data { get; set; }//消息主体数组}
}

第五步:主程序调用

上面步骤都完成了,就等着主程序调用了,我们在主窗体中创建一个 Timer定时器,每3秒中刷新一次聊天记录:

private void timer1_Tick(object sender, EventArgs e){HttpHelper http = new HttpHelper();string data =http.GetData("http://127.0.0.1/?cmdid=7");RecordObject.RecordObject recordObject = JsonHelper.GetRecords(data);foreach(RecordObject.data record in recordObject.data){txt_resault.AppendText(record.StrContent+"\r\n");txt_resault.AppendText("***********************************************************\r\n");}}

看,就是这么简单!

c#调用下载地址(vs2017 .net4.5版本):https://download.csdn.net/download/keepmoving0407/14010292

也可以进群交流下载:(交流群:561112477 1005923608

微信WeChatHelper3.1.0.72逆向-微信WeChatHelper3.1.0.72接口(WeChatHelper3.1.0.72.dll)-c#调用实例方法相关推荐

  1. 微信3.1.0.41逆向-微信3.1.0.41HOOK接口(WeChatHelper3.1.0.41.dll)使用说明

    为了节省微信HOOK开发时间,现将微信HOOK注入DLL接口给大家,本接口从3.0.0.47版本开始,最新版本3.1.0.41,后续会根据自己的时间升级,本接口用vc++2017编写,Win32编译, ...

  2. 微信WeChatHelper3.1.0.72逆向-微信WeChatHelper3.1.0.72接口(WeChatHelper3.1.0.72.dll)-VC++调用实例方法(win32)

    WeChatHelper3.1.0.58.dll接口适用所有语言,今天我来讲一下用VC++(win32)来做个实例调用. 第一步:添加rapidjson类库 VC++用到的JSON库为:rapidjs ...

  3. 微信3.1.0.58逆向-微信3.1.0.58HOOK接口(WeChatHelper3.1.0.58.dll)使用说明-获取群成员

    功能: 获取群成员 Method: GET Http: http://127.0.0.1:8080/?cmdid=55&param=189134584@chatroom 返回值: JSON(D ...

  4. 微信3.1.0.58逆向-微信3.1.0.58HOOK接口(WeChatHelper3.1.0.58.dll)使用说明-发布群公告(相当于@所有人)

    功能: 发布群公告(相当于@所有人) Method: POST Http: http://127.0.0.1:8080 提交数据为JSON: {"cmdid":23,"p ...

  5. 微信3.1.0.72逆向-微信3.1.0.72HOOK接口说明(WeChatHelper.dll)-获取个人信息

    功能: 获取个人信息 Method: GET Http: http://127.0.0.1:8080/?cmdid=4 返回值: JSON: {     "cmdid": 4,   ...

  6. 微信3.1.0.72逆向-微信3.1.0.72HOOK接口说明(WeChatHelper.dll)-发送文本 文件 图片 GIF表情消息

    功能: 发送文本 文件 图片 GIF表情消息 Method: POST Http: http://127.0.0.1:8080 post 数据为JSON: {     "cmdid" ...

  7. 微信3.1.0.58逆向-微信3.1.0.58HOOK接口说明(WeChatHelper.dll)-获取当前聊天微信ID

    功能: 获取当前聊天微信ID Method: GET Http: http://127.0.0.1:8080/?cmdid=9 返回值: JSON: {     "cmdid": ...

  8. 手把手教你逆向微信之朋友圈小视频转发(上)

    前言 此文为逆向微信二进制文件,实现朋友圈小视频转发的教程,从最开始的汇编代码入手到最后重签名安装等操作,手把手教你玩转微信!学会之后再去逆向微信其他功能易如反掌. 本篇文章由于篇幅太长分成了两篇,上 ...

  9. 不越狱 继续逆向 微信运动

    不越狱 继续逆向 微信运动 字数939 阅读312 评论4 喜欢6 接下来还是在 非越狱 环境中进行. 手动修改微信步数 上篇文章中讨论了如何使用Hopper 来修改二级制文件实现逆向,虽然修改过程很 ...

最新文章

  1. Python rstrip()方法 删除 string 字符串末尾的指定字符(默认为空格).
  2. Qt编程之QTreeWidget使用方法
  3. 1151 LCA in a Binary Tree (30 分)【难度: 难 / 知识点: LCA 未完成】
  4. 【字节跳动背后的音视频技术揭秘】
  5. php redis 源码分析,从源码中分析关于phpredis中的连接池可持有数目
  6. ReactiveCocoa中潜在的内存泄漏及解决方案
  7. 华为技术有限公司申请无人机相关专利
  8. java中的关键字 保留字_java中的标识符、关键字、保留字
  9. 99 Bottles Of Beer
  10. 网络安全-破解win10开机密码
  11. c# autoscroll_禁用Firefox中令人讨厌的AutoScroll功能
  12. SQLSERVER Agent XPs disable
  13. 年薪40万最牛应届生 南大一出5个其中2个同宿舍
  14. 2019年211大学计算机排名,2019年全国最新211大学排名 录取分数线是多少
  15. ICAP client 获取ICAP server 的Options
  16. QT小项目---2048小游戏
  17. java双端队列工作密取,同步器皿、并发容器、阻塞队列、双端队列与工作密取...
  18. 如何使用Python将PDF转换为Word文档?
  19. Wirecast Pro 12.1.0 中文特别版 Mac 多机位的现场网络视频直播工具
  20. 竞赛经验——挑战杯、互联网加、北斗杯、微软创新杯、计算机设计等比赛教训与经验

热门文章

  1. 超好用的5款免费微信小程序!小程序也有大智慧,建议收藏
  2. 深度:日本老年食品市场规模超过千亿,国内零食巨头旺旺集团已抢先布局!
  3. python项目之购物街价格竞猜
  4. 批量制作模糊效果视频号短视频
  5. 计算机硬盘的重要性,对设计师而言为何高性能的硬盘很重要
  6. endsWith()
  7. 论如何取消桌面文件夹于svn的关联
  8. 苹果11蓝牙配对不成功怎么办_捷波朗蓝牙耳机配对苹果手机不成功怎么办
  9. Linux命令fc,Linux命令手册
  10. python极简讲义_Python极简讲义:一本书入门数据分析与机器学习 张玉宏