微信防撤回补丁 RevokeMsgPatcher:改 2 个字节,撤回提示不再替换原文
【免费下载链接】RevokeMsgPatcher:trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了)项目地址: https://gitcode.com/GitHub_Trending/re/RevokeMsgPatcher
半夜给领导回完消息,手滑多打了一个错别字,赶紧撤回——结果对面截图了。PC 端微信里,消息撤回后原文并没有真正删除,只是你的客户端收到指令,把原文替换成了一句灰色提示。开源工具 RevokeMsgPatcher 做的事很简单:给官方客户端文件打个防撤回补丁,撤回之后原文仍留在你的聊天窗口里,顺带支持微信多开。
这份补丁动了什么,没动什么
- 动的:只改客户端核心文件里的个别字节——老版微信是
WeChatWin.dll,QQ/TIM 是IM.dll。改前自动留一份.h.bak备份,且每个版本都记了改前、改后两个 SHA1,只允许在指定偏移改指定字节。 - 不碰的:聊天记录库、数据库文件一律不碰,客户端还是官方原版,不套壳、不装额外插件。
- 不影响对方:对方撤回操作照常成功,服务器照常处理,只有你的屏幕上保留了原文。
原理:为什么改 2 个字节就能拦住撤回
微信收到撤回指令后,会先判断"这条消息是否确实被撤回",判断通过才执行"把原文替换成撤回提示"。补丁动的就是这次判断里的跳转指令:
je(条件跳转)→ jmp(无条件跳转)判断被跳过,替换就不会发生,原文自然留了下来。这一步最早是作者在调试器里手改完成的:搜到revokemsg字符串定位函数,再逐字节改跳转。现在流程自动化了,匹配器按特征码定位字节,前后各验一次 SHA1,你只负责点按钮。
客户端版本支持范围
| 客户端 | 支持情况 | 可装功能 |
|---|---|---|
| 微信(老版 2.x ~ 3.9.x、4.0 新版) | 各有对应特征码 | 防撤回 + 多开 |
| QQ、QQ 精简版 | 特征码覆盖对应版本 | 防撤回 |
| TIM | 特征码覆盖对应版本 | 防撤回 |
| QQNT(新版) | 特征码覆盖对应版本 | 防撤回 |
版本数据不打包在程序里,特征数据目录按版本号归档,程序启动时联网拉取最新版。界面显示"不支持"通常不是程序坏了,而是你的客户端版本还没被特征库收录——升级客户端或等数据更新即可。每种客户端背后对应 Modifier 目录 里的一个独立修改器类,选好类型后程序自动分派。
补丁前核对清单:3 项不满足就别动手
- 运行环境:Windows 7 及以上(不支持 XP),.NET Framework 4.5.2 或更高 —— 不满足时,打开程序可能没反应或直接报错。
- 客户端彻底退出:关窗口不够,托盘图标也要退出,任务管理器里确认没有
WeChat.exe残留 —— 不满足时,DLL 文件被进程占用,补丁写不进去。 - 管理员权限:右键补丁程序,选"以管理员身份运行" —— 不满足时,改核心文件没有写入权限,必然失败。
安装补丁:4 步完成
启动程序,等右下角拉完补丁数据。转圈时间偏长一般是网络问题,特征码库是联网现取的,不走本地。
选客户端类型和安装路径。安装版一般从注册表自动识别;绿色版手动浏览到
wechat.exe所在位置。勾选功能。微信有"防撤回"和"多开"两项,可都勾;QQ、TIM 只有防撤回。版本号显示红色且没有勾选项,说明特征码没匹配上,只能先换客户端版本。
点"安装补丁",等进度条走完,关闭补丁程序,正常启动客户端。这一步杀软大概率会弹窗提示
WeChatWin.dll或IM.dll被修改,属于改核心文件的误报;若文件被隔离,先在隔离区恢复,再把客户端目录加入白名单。
只想多开、不想动防撤回的人,仓库里另有一个独立的 微信多开工具:它清掉微信用来判断"是否已有实例"的互斥句柄,不挑微信版本,但打过多开补丁的微信不要再叠加使用。互斥名在调试器里搜字符串就能看到:
打完补丁怎么验证撤回已失效
30 秒内做完:启动微信,用文件传输助手给自己发一条消息,几秒内撤回。
- 防撤回成功:撤回操作有提示,但原文仍留在聊天窗口。
- 多开成功:再启动同一个微信,两个窗口同时挂着。
任何一项不成立,对照下面这张表。
常见故障排查表
| 症状 | 原因 | 处理 |
|---|---|---|
| 打不上,提示文件被占用 | 客户端进程没退干净,含托盘残留 | 任务管理器结束 WeChat.exe 后重试 |
| 杀软报警或文件被删 | 改写核心 DLL 被误判为病毒 | 放行,或将客户端目录加入白名单 |
| 客户端更新后防撤回失效 | 更新覆盖了已打补丁的文件 | 重新以管理员身份打一次,顺手关掉自动更新 |
| 打开补丁程序没反应或报错 | 缺少 .NET Framework 4.5.2 及以上运行时 | 装好对应运行时再打开 |
| 界面显示"不支持" | 当前客户端版本不在特征库范围 | 升级客户端或等特征数据更新 |
最后说清一件事
改官方客户端文件属于灰色操作。留工作通知、保存重要聊天记录这类正当场景,问题不大;拿它窥探别人隐私,就越线了。想翻源码的话:
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),仅供参考