当前位置: 首页 > news >正文

PC微信防撤回补丁实操指南:三步装好微信防撤回,撤回的消息再也藏不住

PC微信防撤回补丁实操指南:三步装好微信防撤回,撤回的消息再也藏不住

【免费下载链接】RevokeMsgPatcher:trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了)项目地址: https://gitcode.com/GitHub_Trending/re/RevokeMsgPatcher

刚眯眼看"调薪通知"的下半句,消息就变成一行灰字:"你撤回了一条消息"——那关键的后半句,永远看不到了。开源工具 RevokeMsgPatcher 专门干这事:给 PC 版微信、QQ、TIM 打一个"防撤回"补丁,让被撤回的消息原样留在聊天记录里。这篇文章是我把完整流程跑了一遍的记录:装什么、哪里翻车、什么能拦什么拦不住,一次讲清楚。

动手之前:这个补丁能做什么、不能做什么

我知道你急着看安装步骤,但先花 30 秒把预期校准好,免得装完发现"不是这么回事":

事项实际情况
打好补丁后收到的撤回消息内容原样保留,聊天记录里能搜到关键词
已经消失的撤回消息找不回来,它不是时光机,只对"之后"生效
对方屏幕看到什么一切照旧,仍显示"你撤回了一条消息",无从察觉
微信/QQ 自动更新之后核心文件被新版覆盖,补丁失效,需要重新打一次
杀毒软件改 DLL 时几乎必然报警,需要放行或提前加白名单
版本太新没适配会提示找不到特征,只能等特征库更新,别硬来

另外坦白一句:这是灰色操作——改的是官方程序文件。用在留存工作通知、重要聊天记录这类正当用途上,别拿去窥探别人隐私,用途怎么定,取决于你自己。

防撤回补丁安装全流程:分三个阶段,每步都能断点续做

整个安装我算过时间:顺利的话 10 分钟以内,我第一回花了快 30 分钟,多出来的一半全耗在自己没退出干净微信上。

阶段一 · 准备:三件事,缺一装不上

检查系统环境。Windows 7 及以上(不支持 XP),.NET Framework 4.5.2 及以上。Win10 一般自带,老系统可能要补装。环境不达标,程序双击之后会直接没反应或报错,白折腾。

彻底退出目标软件——最大的坑在这里。不是关窗口,是连右下角托盘里的微信小图标也要一起退掉。补丁要改写微信的核心文件,文件被进程占着就写不进去。我第一次就图省事只关了窗口,点"安装补丁"直接卡死在报错上,看了半天才反应过来。

右键"以管理员身份运行"补丁程序。它要改的是系统级文件,普通权限会被拒之门外。这步不用思考,照做就行。

阶段二 · 执行:选类型、勾功能、点安装

程序打开后,右下角会显示"[ 获取最新补丁信息中... ]",等它变成"获取成功"再往下走——它刚启动时会联网拉取最新的特征库数据。

界面上就四样东西:选择应用、应用路径、可选功能、两个按钮。

  • 选择应用:微信、微信 4.0、QQ、QQNT、QQ轻聊版、TIM,选你实际要打的。
  • 应用路径:安装版不用管,程序会自动从注册表读到路径(这段自动探测逻辑在 WechatModifier.cs 里);绿色版、便携版识别不到就点"...",手动指向含 WeChatWin.dll 的那个目录。指错了它会明确报错:"无法找到此应用的关键文件,请选择正确的安装路径!"
  • 看版本号:路径识别成功后,下方会显示"当前版本:x.x.x.x(支持特征防撤回)"。如果显示不支持,说明你的软件版本太新、作者还没来得及适配特征库,先升级补丁程序再说。
  • 勾可选功能:微信会同时出现"防撤回"和"多开"两个勾选项,按需勾选(多开的事后面单独讲)。
  • 点"安装补丁!"。界面卡住无响应几秒钟是正常的,耐心等,别强退。

翻车预警:进度条刚走完,杀毒软件的警告弹窗几乎准时到达——它改的是微信核心 DLL,杀软不认识这种改动就会拦。确认文件是从官方仓库来的之后再点放行;杀软比较激进的,建议先把补丁目录加进白名单再动手。

想反悔也有退路:点"备份还原",工具会把原始文件还原回去。

阶段三 · 确认:重启微信,看两处

补丁打完,正常启动微信、登录。然后看两处:

  1. 聊天功能正常:随便发收几条消息,界面没异常、不闪退。
  2. 多开是否生效(如果你勾了):直接再启动第二个微信,能正常进入说明多开也好了。

如果启动时报"文件已损坏/无法启动",十有八九是杀软把改过的 dll 隔离了——先还原原始文件,加白名单,重新打补丁。

防撤回效果5分钟自检方法

装完不验证,我心里不踏实。这套自测方法我亲测有效,全程不到 5 分钟:

  1. 准备另一台设备或一个不常用的小号(找朋友配合也行);
  2. 给你电脑上的微信发一条有辨识度的消息,比如"撤回测试 2026-08";
  3. 对方那头点"撤回";
  4. 看你的聊天框:那条消息还在,一字不少,而且能在聊天记录搜索框里搜出关键词——成功;
  5. 多走一步:看一眼对方屏幕,如果那边照常显示"你撤回了一条消息",闭环完成。

这最后一步值得做。确认"对方毫无察觉",比确认"消息还在"更让人安心。

原理拆解:被锁死的传菜窗口与一条跳转指令

很多人一听"改二进制文件"就绕道,其实原理一点不神秘。先讲个场景:

把你的聊天窗口想成一个餐厅的传菜台。对方发的每条消息,都是已经传到你台面上的菜。所谓"撤回",是后厨喊了一嗓子"这道菜收回去"——正常情况下,服务员(微信程序)听到喊声,会立刻把菜端走扔掉,你只能眼睁睁看台面空掉。

补丁干的事,不是堵后厨的喊声,而是把服务员操作手册里的一行字改了:把"收到喊声就收菜"改成"收到喊声也留菜在台上"。菜(消息内容)稳稳留在台面上,后厨那边照样记着"已退回",所以对方屏幕上"你撤回了一条消息"一切如常,谁也不知道你这台传菜台的规则被改过。

现在把场景对回技术细节:

  • 那本"操作手册"就是微信的核心文件WeChatWin.dll(微信 4.0 是 Weixin.dll,QQ/TIM 是 Bin\IM.dll);
  • 手册里"收菜"这个动作,躲在一条条件跳转指令后面——汇编语言里的je,意思是"条件成立才跳过去执行删除代码"。补丁把这行条件跳转改成不跳转的指令,删除逻辑从此永远执行不到。

这件事最早是作者在调试器 x64dbg 里手工完成的:先把微信跑起来,在内存里搜特征字符串"revokemsg"——"revoke message"的缩写,顺着它一路定位到相关代码:

定位到之后,把关键的条件跳转je改成无条件跳转jmp,再把改过的字节写回 WeChatWin.dll:

从手搓逆转到一键完成:作者把脏活全自动了

这么繁琐的过程,每次微信更新都要手动来一遍吗?完全不用。这正是这个项目最聪明的地方:

  • 所有已知版本的特征串和修改位置,都预存在 RevokeMsgPatcher.Assistant/Data/ 目录下的补丁数据文件里,每个微信版本一份;
  • 程序用 Boyer-Moore 算法在几十上百兆的 dll 里快速定位特征串(实现见 BoyerMooreMatcher.cs);
  • 修改前核对原文件 SHA1 哈希,修改后再校验一遍,确保不会改错位置。

你点一个按钮,剩下的脏活累活它全包了。

意外之喜:顺手解锁微信多开

装的时候是冲着防撤回去的,用下来发现多开才是真香——个人号、工作号、客户群分开登,不用再一台电脑来回扫码。

多开的原理也不复杂:微信启动时会先检查"是不是已经有一个自己在运行",判断依据是一个叫**互斥体(Mutex)**的标记,你可以把它理解成一张"此桌已有人"的牌子——第二个微信拿着同样的牌子来,直接被拦下。逆向人员在调试器里搜到了这块牌子的名字字符串:

RevokeMsgPatcher 打防撤回补丁的同时,会把这块"牌子"一并废掉,于是第二个、第三个微信都能顺利进场。

如果你暂时不想动主程序,项目里还附带了一个独立的微信多开小工具:自动模式点"启动多开"就能拉起多个微信,手动模式提供"关闭所有微信进程""清理所有微信互斥句柄",基本无视微信版本。

⚠️ 注意:如果主程序已经装了带"多开"的补丁,就不要再叠加使用那个独立多开工具,两套机制会冲突。

适合谁装、不适合谁装

适合装的人:

  • 经常被工作群、家庭群的"撤回"坑过,错过关键通知会出事的;
  • 有重要聊天记录要留底,又不放心只靠截图的;
  • 需要微信多开、受不了来回切换扫码的;
  • 接受"版本更新后重新打一次",愿意花 10 分钟装补丁的。

不适合装的人:

  • 在用最新测试版通讯软件,作者还没来得及适配特征库的;
  • 杀软一弹窗就慌、又不想研究"这到底是不是官方文件"的;
  • 对"修改官方程序文件"这件事接受不了,追求绝对干净合规的;
  • Mac / Linux 用户——这个补丁只支持 Windows。

工具本身没错,能不能用好取决于用它的人。守住自己该留的记录,也尊重别人撤回的权利,这是最舒服的用法。

收尾:那条撤回的消息,终于留下了

回到开头那个"调薪通知"。装上补丁之后,我特意让朋友又撤了一条消息试试——内容原原本本躺在聊天记录里,搜索一搜就出来;再看朋友那边,屏幕上还是那行再普通不过的"你撤回了一条消息"。从那天起,"撤回"这两个字在我这里只剩一层意思:对方的一厢情愿。

如果你也受够了"眼睁睁看着消息消失却无能为力",获取方式就一条命令的事:

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),仅供参考

http://www.cnnetsun.cn/news/4208733.html

相关文章:

  • 一行文本该落在哪里?详解Combo Breaker的findFlowSlots槽位搜索算法
  • toxic-repos快速上手教程:5步从零搭建你的开源仓库安全黑名单
  • 如何用yuzu在电脑上免费运行Switch游戏
  • BTree索引自适应调优:用模拟退火实现负载感知优化
  • Echo Editor实时协作展望:y-prosemirror与Yjs协同编辑探索指南
  • 5分钟上手教程:CVE-2019-11708 Firefox浏览器漏洞利用链快速运行完整指南
  • 彻底解决雪花算法ID在前端JavaScript中的精度丢失问题
  • SAP固定资产核心底表全解析:从ANLA到ANEP的数据逻辑与应用
  • Java Stream limit()方法:从短路求值到性能优化的核心实践
  • 射击游戏后台开发:物理引擎应用与移动模拟实战
  • 大语言模型使用技巧
  • conda环境迁移
  • Vivado FPGA实现后调试实战:从ILA抓信号到增量编译避坑
  • ESP32本地AI聊天机器人开发指南:从硬件选型到模型部署实战
  • Linux下U盘设备节点变化问题解析与稳定挂载方案实践
  • 基于 ICMP 的网络连通性探测机制 : ping 与 traceroute 工作流程
  • 《妃梦千年》第01章-梦回大唐
  • 什么是超链接?底层原理是什么?
  • 机器视觉(九):图像配准
  • 主流NewSQL数据库深度解析:从架构原理到选型实践指南
  • 机械臂速成小指南(十九):机械臂的电路板抓取实验
  • 机械臂速成小指南(十一):坐标系的标准命名
  • Step7编程语言与结构解析:从梯形图到模块化架构实战
  • 初级--05--- 取模运算转化为位运算、位运算进行加减乘除
  • MyBatis关联查询深度解析:嵌套结果与嵌套查询的性能权衡
  • 主流登录鉴权框架深度解析:Spring Security、Shiro、JWT与OAuth2选型指南
  • 本地IDE与笔试平台环境差异解析与解决方案
  • 从Ubuntu迁移回Windows:21步实战指南与数据安全备份
  • 2026年高性价比UPS选购指南:150-550元区间16款横评与实战配置
  • STM32程序跑飞调试:在线调试、看门狗与崩溃日志的三层防御体系