PC微信QQ防撤回补丁:4步打上,撤掉的消息不再消失
【免费下载链接】RevokeMsgPatcher:trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了)项目地址: https://gitcode.com/GitHub_Trending/re/RevokeMsgPatcher
开会时对方刚发来的关键安排,三秒后变成"对方撤回了一条消息"。Windows 上有个开源工具 RevokeMsgPatcher 能解决这事——它是个针对 PC 版微信、QQ、TIM 的防撤回补丁工具,改几个字节,撤回就失效了。
📦 项目速览
先说清楚它能做什么、不能做什么,免得期望错位:
- 是什么:一个 Windows 桌面小程序(GPLv3 开源),单窗口界面,打完补丁就可以关掉它,它不是常驻后台的进程。
- 做什么:直接修改客户端的 DLL 文件——微信改
WeChatWin.dll(4.x 版微信改Weixin.dll),QQ/TIM 改IM.dll,新版 QQNT 改wrapper.node,从而让"撤回"失效。 - 不能做什么:不支持 Mac 和手机端;不能让你"撤回别人的消息",只能让自己的消息不被对方撤走。
- 运行要求:Windows 7 及以上(不支持 XP),.NET Framework 4.5.2 或更高,版本低于 4.5.2 时双击程序可能直接没反应。
- 版本支持:补丁库覆盖微信 2.6.6.28 到 4.x、QQ 9.1.6 到 9.4.7+、TIM 3.0.0+,具体以程序右下角"获取最新补丁信息"的结果为准。
🧩 防撤回原理:把"看情况才执行"改成"直接跳过"
程序内部处理撤回的逻辑,可以理解成一道门卫规则:"如果这条消息符合撤回条件,就执行'把消息替换成撤回提示'这一步。"关键在于"如果"——只要这个条件判断被跳过,后面那步替换逻辑就永远不会走到。
RevokeMsgPatcher 做的事就是找到这句"如果",把它的字节改掉。用术语说,是把 DLL 里的条件跳转指令(比如 JE,满足条件才跳转)改成无条件跳转或空操作——"满足条件才放行"变成了"无条件跳过这一步"。整个改动通常只有几个字节,发生在磁盘上的文件里,不需要注入进程、不需要挂着后台服务,所以改完关掉补丁程序也不影响效果。
上图为作者在调试器中手动定位微信 DLL 特征码的过程——你不需要自己找,程序会按版本自动匹配,但原理和这一步完全一致:先按 SHA1 确认文件没被改过,再按特征码定位那几字节,替换、写回。
🖱️ 补丁安装步骤:准备到验证
准备
- 彻底关闭微信/QQ/TIM,包括后台进程(任务管理器里确认没有残留的 WeChat.exe)。
- 拿到程序:最简单的方式是从项目 Releases 页下载最新版 zip 解压使用;也可以克隆源码自己编译:
git clone https://gitcode.com/GitHub_Trending/re/RevokeMsgPatcher⚠️ 绿色版(解压即用)的微信/QQ 不在注册表里,稍后需要手动选路径;安装版一般能自动识别。
安装
- 右键
RevokeMsgPatcher.exe,选"以管理员身份运行"。 - 等右下角状态从"获取中"变成"获取成功"——这一步是在拉最新的补丁特征库。
- 选择应用(微信/QQ/TIM/QQ轻聊版/QQNT),应用路径已自动填好就别动;绿色版点"..."手动指到安装目录。
- 勾选功能后点"安装补丁"。
⚠️ 这里有两个高频卡点:杀毒软件会警告你改了微信的文件,放行即可;界面点完按钮会"假死"几秒到十几秒,它正在算 SHA1 和比对特征,别急着关。
配置
- 勾"防撤回"是基础操作。部分微信版本会出现"防撤回(老)"和"防撤回带提示(新)"两项——它们二选一,前者撤掉的消息不显示撤回提示,后者有提示但图片视频仍会被删。
- 微信可以额外勾"多开",见下一节。
验证
- 启动微信,让好友发一条消息再撤回。
- 消息还在,且没有"对方撤回了一条消息"的提示,就说明打上了。
- 界面里"备份还原"按钮变为可用——说明自动备份已生成,随时能还原。
⚠️ 验证失败别慌,先看下一节的避坑手册,十有八九是版本没对上或进程没关干净。
⚙️ 进阶玩法:多开与一键还原
微信多开。微信启动时会检查一个系统"互斥量"(mutex):发现已经有一个微信在跑,就拒绝第二次启动。多开补丁干的事就是把这个检查打掉——改的同样是 DLL 里那几字节。打完之后直接双击图标就能开第二个微信,每个窗口登录不同账号,适合工作号生活号分开的场景。
⚠️ 仓库里还有一个独立的小工具RevokeMsgPatcher.MultiInstance,不依赖补丁也能多开(它每次启动前手动清理互斥量)。如果你已经打了多开补丁,就不要再用这个工具,README 里明确警告了这一点。
备份还原。打补丁前程序会自动把原始 DLL 备份一份,点"备份还原"即可原样恢复。想取消补丁、或者改坏了软件起不来,这是第一选择,比重装客户端快得多。
想看懂每个应用各自改了什么,可以看修改器源码:RevokeMsgPatcher/Modifier/,微信、QQ、TIM 各有一个类,特征匹配用的是 Boyer-Moore 算法。
🩹 常见问题避坑
点"安装补丁"报错、提示无法写文件→ 原因:目标软件没关干净,或没用管理员权限运行。 → 解法:任务管理器结束所有微信/QQ 进程,右键程序以管理员身份重新打开。
微信更新后防撤回失效,功能项里也找不到对应版本→ 原因:客户端升级后 DLL 变了,旧特征码对不上,程序不会硬打。 → 解法:升级到最新版 RevokeMsgPatcher 重打一次补丁。记住这个规律:每次微信/QQ 更新后都要重新打补丁。
提示 SHA1 校验失败或找不到匹配的版本→ 原因:本地文件已被改过(可能之前打了一半、或被杀毒软件处理过),和补丁库里任何已知版本都对不上。 → 解法:先点"备份还原"清干净再重打;没有备份就把客户端重装到原始状态再来。
界面长时间无响应,像卡死了→ 原因:正在计算大文件的 SHA1 并逐条比对特征,DLL 动辄上百 MB,这一步就是慢。 → 解法:等。强制关闭不会让结果更好。
⚖️ 用之前想清楚的三件事
- 打补丁修改的是腾讯客户端本身的文件,这可能违反软件用户协议,账号风险(比如多开被风控)需要自己承担,重要账号建议先想清楚。
- 消息是双方的,防撤回解决的是"我自己要看"的问题,别拿它当监控手段,更别用来截图施压或骚扰。
- 补丁只管自用,把打好补丁的客户端分发给别人,超出了这个开源项目的授权范围。
结尾
回到开头那个场景:下次"对方撤回了一条消息"弹出来的时候,你已经能确认消息还在原地了。如果你手头的版本没在支持列表里,把微信/QQ 的具体版本号发给项目提个 Issue,这是让补丁库跟上客户端更新最快的方式;想查每个版本的细节,看项目 wiki 的"支持哪些版本"和"常见问题"两篇就够了。
【免费下载链接】RevokeMsgPatcher:trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了)项目地址: https://gitcode.com/GitHub_Trending/re/RevokeMsgPatcher
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考