Ohook:3步永久激活Office 365订阅版全功能
【免费下载链接】ohookAn universal Office "activation" hook with main focus of enabling full functionality of subscription editions项目地址: https://gitcode.com/gh_mirrors/oh/ohook
凌晨十二点,北京某互联网公司,新媒体运营小林盯着 Word 右上角"产品未激活"的横幅——本周第三次了。试用期一过,Excel 数据透视表被锁,PPT 高级动画被关,网上找的密钥要么秒失效,要么被杀软拦截。直到同事把 Ohook 推给她:"三步,永久解锁全部功能。"这就是本文主角:一个靠钩子技术拦截 Office 许可证检查、让订阅版功能完整可用的开源项目。
💡 它到底解决了什么:不是破解,是"报个平安"
想象一栋办公楼,大门门卫每天上班就问一句:"通行证带了吗?"(对应 Office 启动时的许可证自查)。Ohook 不是撬锁的人,也不是给你造假证的人,它只是站在门卫旁边递了一张"已放行"的回执——系统该怎么查就怎么查,门卫问完照样放你进。
更讲究的是,Ohook 不无脑撒谎。它先调用系统函数拿到真实状态,只有看到"未激活"的结果才动手改成"已激活",宽限期(Grace)产品还会被放过去,尽量少干扰。源码见项目里的sppc.c,核心函数SLGetLicensingStatusInformationHook只有几十行,读起来不费劲。
它能带来的价值,一张表说清:
| 价值点 | 白话解释 |
|---|---|
| 订阅版全功能解锁 | Word、Excel、PPT 等高级功能完整可用 |
| 系统零修改 | 不碰 Office 本体,只多放一个钩子 DLL |
| 对症下药 | 用对应版本的正确许可证,功能不缺项 |
| 开源透明 | MIT 协议,源码全公开 |
| 两档可选 | 普通版 / Plus 版,按侵入程度自选 |
普通人也能上手:准备、执行、验证
① 准备:先拿到项目
在 Windows 命令行里把项目克隆下来(或用别人编译好的 DLL):
git clone https://gitcode.com/gh_mirrors/oh/ohook这句的意思是:把整个项目下载到本地。下面所有操作都在 Windows 的 cmd 里进行,以下以 64 位系统、C2R 安装的 Office 为例。
② 执行:两条命令 + 一把密钥
第 1 步,把系统原始库"请进"Office 目录当备份:
mklink "%programfiles%\Microsoft Office\root\vfs\System\sppcs.dll" "%windir%\System32\sppc.dll"白话:在 Office 目录建一个指向系统原始sppc.dll的符号链接,改名为sppcs.dll备用。
第 2 步,把钩子库复制进去顶替正主:
copy /y sppc64.dll "%programfiles%\Microsoft Office\root\vfs\System\sppc.dll"白话:让 Office 实际加载的是 Ohook 编译出的钩子 DLL。32 位系统请把sppc64.dll换成sppc32.dll。
第 3 步(可选):某些版本启动时会弹"检查此设备许可证状态时出现问题"的横幅,在 hosts 文件(C:\Windows\System32\drivers\etc\hosts)末尾加一行:
0.0.0.0 ols.officeapps.live.com白话:让在线订阅检查"查无此域名",从源头掐掉报错。
第 4 步:装一把空白密钥,按你的版本选:
| 版本 | 空白密钥 |
|---|---|
| Microsoft 365 | NBBBB-BBBBB-BBBBB-BBBBG-234RY |
| Microsoft 365 Apps for enterprise | NBBBB-BBBBB-BBBBB-BBBCF-PPK9C |
③ 验证:重启即见分晓
关闭并重新打开 Word 或 Excel,"未激活"横幅消失、此前灰掉的功能能用了,就成了。整个流程熟练的话 3 分钟以内。
原理大白话:一个"门卫放行"的故事
Office 启动时真正像样的许可证检查只有一次——调用系统函数SLGetLicensingStatusInformation问"这货授权了吗"。Ohook 的思路是偷梁换柱:Office 目录里的sppc.dll其实已被换成钩子库,它先帮 Office 问一遍真系统,再决定要不要撒谎:
顺带解释一个高频疑问:为什么不用 Mondo 2016 许可证?因为那种许可证对新版 Office 只更新了一部分,产品策略缺项,某些功能可能悄悄失灵且无法排查;Ohook 用的是你当前安装版本对应的正确许可证,功能才完整。
👥 谁在用:三类人
- 学生与预算有限的个人——写论文、做汇报需要完整功能,又负担不起订阅费。
- 中小企业与创业团队——多台设备统一部署,省下按人头计的订阅开支。
- 开发与测试人员——研究 Office 授权机制,或在多版本环境做兼容性测试。
⚠️ 风险与边界:诚实说几句
- 适用范围有限:目标是订阅版(Microsoft 365 及其企业版),并非所有 Office 版本的万能钥匙。
- 依赖 Windows 环境:面向 C2R 安装的 Office,命令均为 Windows 语法。
- 云端能力不承诺:README 明确写了——1TB OneDrive、Python in Excel 等在线功能不支持。
- 普通版 vs Plus 版:Plus 版会额外写注册表(把
TimeOfLastHeartbeatFailure改为2040-01-01T00:00:00Z)来挡在线订阅检查,侵入更强、更易被杀软误报;日常推荐普通版。 - 官方支持有限:项目主要面向授权合作伙伴发布,官方不直接提供用户支持;遇到问题先读
readme.md里的 FAQ。 - 合规由你负责:工具供技术研究使用,请遵守所在地区法律与软件许可协议。
从入门到进阶:三个梯度
- 分清两个版本:
sppc.dll是普通版,sppcplus.dll是 Plus 版,判断标准就一条——要不要动注册表。 - 自己编译:装好 MinGW 32/64 位工具链,在项目根目录执行
make,一次产出sppc32.dll、sppc64.dll、sppcplus32.dll、sppcplus64.dll四个文件,构建细节见Makefile。 - 批量部署与日常维护:把
mklink和copy写进.bat脚本,公司几台机器一条命令跑完;之后定期检查符号链接是否有效、hosts 是否还在,Office 更新后视情况重放 DLL,并保留原始文件备份。
一起共建
项目在 GitCode 镜像仓库:https://gitcode.com/gh_mirrors/oh/ohook。想参与可以从三件事做起:读sppc.c提改进意见、在仓库提交 issue 反馈兼容性问题、在 MinGW 环境下修 bug 或补构建测试。注意官方不直接提供用户支持,提问时把系统版本、Office 版本、复现步骤写清楚,社区才帮得上忙。
🚀 动手吧,三分钟就够了
别让一个弹窗毁掉你的工作流。克隆、两条命令、一把密钥,重启 Word 的那一刻,你会看到横幅消失的爽快。
合规提示:本文仅供技术研究与学习。Ohook 是 MIT 协议的开源项目,但"激活"订阅版软件务必遵守你所在地区的法律法规与微软软件许可条款,请优先支持正版。文中命令、密钥与版本说明均来自项目官方 README 与源码,操作前请自行核对环境。
【免费下载链接】ohookAn universal Office "activation" hook with main focus of enabling full functionality of subscription editions项目地址: https://gitcode.com/gh_mirrors/oh/ohook
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考