撤回了的消息为什么还看得到?3 步装好微信防撤回和多开补丁
【免费下载链接】RevokeMsgPatcher:trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了)项目地址: https://gitcode.com/GitHub_Trending/re/RevokeMsgPatcher
凌晨一点,群里有人撤回了一条消息,那行灰字一闪而过,内容再也看不到了。这种憋屈,开源项目 RevokeMsgPatcher 可以终结——它给 PC 版微信、QQ、TIM 打防撤回补丁,让被撤回的消息原样留在聊天记录里,顺带解锁微信多开。
它到底动了微信的哪里
RevokeMsgPatcher 是个纯 Windows 程序,跑在 .NET 框架上,干的事说起来很轻:打开微信、QQ、TIM 的核心 DLL(微信是WeChatWin.dll,QQ 和 TIM 是IM.dll),在精确的字节位置改写其中几个字节,让"收到撤回通知"这一步永远执行不到。
它不替换客户端、不动聊天记录数据库、不碰服务器端。跟换第三方客户端或改数据库的方案比,最本质的区别在于:装完它,用的还是官方原版,对方那边一切如常,照样显示"撤回了一条消息"。
核心能力速览
一个程序管住微信、QQ、TIM
界面上几个客户端各占一栏,背后是各写各的修改器:WechatModifier.cs、QQModifier.cs、TIMModifier.cs,连新架构的 QQNT 也有对应处理。每个版本该改哪个位置、改哪几个字节,全部以特征码形式存在RevokeMsgPatcher.Assistant/Data/下的patch.json里,按版本号归档。点一下按钮,程序自己查表、定位、下刀,全程不用手动找地址。
防撤回之外,顺手解锁微信多开
微信默认只允许一个实例,靠一个互斥体(Mutex)认锁:第二个微信启动时一看锁在,直接退场。补丁把这步检查跳过,个人号和工作号就能同时挂着。我第一次装它本来是冲防撤回去的,用了一阵才发现多开更实用——开会时工作号在线,私人号照挂,不用来回退号扫码。嫌改 DLL 麻烦的话,仓库里还有个独立的RevokeMsgPatcher.MultiInstance多开小工具,不动主程序也能用。
下刀前先验货,改坏了能回滚
动手之前先核对原文件的 SHA1 哈希,改完再校验一遍,确保只动了该动的字节。打补丁前会自动备份一份.bak,觉得不对劲就一键还原成官方原版;就算改到一半出错,已经改过的文件也会自动回退,不会留下半残文件。
上手指南:3 步装好补丁
- 先确认系统:Windows 7 SP1 及以上、.NET Framework 4.5.2 以上,Win10 一般自带。版本不够程序会直接报错,卡住先查这里。
- 把微信彻底退掉:关窗口不算,右下角托盘图标也得退出。DLL 被进程占着就写不进去,我第一次装就是栽在这一步。
- 右键"以管理员身份运行",等右下角拉取最新补丁数据,然后选客户端和路径。安装版会自动识别,绿色版手动指一下
WeChat.exe所在位置,勾选"防撤回"和"多开",点安装。进度条跑完的瞬间杀毒软件大概率会报警,这是改写核心 DLL 引起的误判,确认来源没问题就放行。
重启微信后,用小号给自己发一条再撤回,内容还躺在聊天框里就算生效了。
原理拆解:让撤回电话永远打不通
把本地微信想成一家餐厅:每条消息是端上桌的菜品,撤回是发件人打电话要求"把这道菜撤下去",服务员(处理撤回的那段代码)一接电话就把菜端走了。RevokeMsgPatcher 干的事,是让服务员对这种电话永久装聋——电话照接,菜照放,桌上东西一点不少。
代码层面就是改一条跳转:原来写的是"如果这是撤回请求,就跳去执行删除",补丁把这条条件跳转废掉(把je改成jmp的否定方向),删除逻辑从此轮不到执行。当年作者是在调试器里手搜revokemsg这个字符串找到的位置:
后来这套逆向过程被自动化:特征码预置在数据文件里,程序用 Boyer-Moore 算法在 DLL 里快速定位(实现见Matcher/BoyerMooreMatcher.cs),前后双重校验,只管点一次"安装补丁"。
常见问题,动手前看一眼
| 现象 | 原因 | 解法 |
|---|---|---|
| 提示文件被占用、装不上 | 微信没退干净(含托盘进程) | 任务管理器结束WeChat.exe再重试 |
| 打补丁时杀毒软件报警 | 改写核心 DLL 被误判 | 确认仓库来源后放行,或加入信任区 |
| 客户端更新后防撤回失效 | 更新覆盖了被改过的文件 | 管理员身份重新装一次,顺手关掉自动更新 |
| 提示"已安装过此补丁" | 文件校验出已经被改过 | 不用重复操作,需要时先还原再重装 |
提醒一句:这类修改只适合留给自己的重要记录,别拿它去看别人的隐私。
git clone https://gitcode.com/GitHub_Trending/re/RevokeMsgPatcher装好这一次,往后被撤走的就再也撤不走了。
【免费下载链接】RevokeMsgPatcher:trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了)项目地址: https://gitcode.com/GitHub_Trending/re/RevokeMsgPatcher
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考