ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

3分钟解锁 Office 365 订阅版全部本地功能:Ohook 钩子激活工具使用指南

3分钟解锁 Office 365 订阅版全部本地功能:Ohook 钩子激活工具使用指南

3分钟解锁 Office 365 订阅版全部本地功能:Ohook 钩子激活工具使用指南

【免费下载链接】ohookAn universal Office "activation" hook with main focus of enabling full functionality of subscription editions项目地址: https://gitcode.com/gh_mirrors/oh/ohook

Ohook 是一款开源的 Office“激活”钩子工具,核心使命是让 Microsoft 365 这类订阅版 Office 的本地功能完整可用。它不改动系统文件、不安装常驻服务,部署只需几分钟,之后每次打开 Word、Excel、PowerPoint 都以“已授权”状态运行。本文从原理讲到实操,带你把步骤一次走通。

场景:订阅到期的那个下午,你的 Excel 突然“哑了”

周三下午,你正赶一份季度报表,打开 Excel 却发现顶栏多了一条黄色提示:未授权产品。功能区一大片按钮变灰,公式只剩基础几条,连保存都弹警告。翻进订阅后台一看——Microsoft 365 家庭版过期了。

续费当然最省心,但如果你只是临时要完成手头工作、或者暂时不想立刻掏钱,你真正需要的,是让 Office“以为”自己仍在授权期内。Ohook 就是干这个的:它不破解任何文件,只是让 Office 的许可证检查一路绿灯。

Office 的许可证检查,本质上是一次“你问我答”。Ohook 做的事情,是悄悄把答题的人换成了自己人。

Ohook 是什么:不是破解,是“会撒谎的传话人”

用大白话解释:Office 启动时会向系统提问“我的许可证还有效吗?”Ohook 在中间插了一脚,让回答永远是“有效”。

它做这件事的方式相当克制:

  • 只接管一个关键函数:Office 启动时真正会查的只有SLGetLicensingStatusInformation这一个函数,Ohook 只拦它;
  • 其余几十个函数原样转发:别的许可证相关调用全部转回系统原版库处理,不重写、不替代;
  • 只动 Office 目录:文件只放进 Office 自己的安装目录,系统目录里的原版sppc.dll一个字节都不碰。

换句话说,它像换了一个“好说话的保安”,而不是拆掉整栋楼的安保系统。

这几类人尤其值得花这几分钟:

  • 学生党:论文、实验报告都要用到完整 Office;
  • 自由职业者:偶尔使用高级功能,不愿背上长期订阅;
  • 中小企业 IT:给员工批量部署,省下可观的软件预算;
  • 开发者与测试:需要在多个 Office 版本环境里做兼容性验证。

先看传统激活方案的三座大山

在动手前,先横向看一遍市面上常见的路子,你就明白 Ohook 的位置了:

方案大致原理典型痛点
KMS 激活模拟企业批量激活服务器,客户端定期续期普遍需要 180 天左右的续期机制,脚本/服务器一断就掉
替换文件 / 改注册表直接改动 Office 或系统的授权文件破坏性大,更新后容易失效,风险高
订阅付费官方正途需要持续支出
Ohook只拦截许可证检查的返回值在线功能不受影响,日常几乎零存在感

KMS 不是不好,它更适合有批量授权场景的组织;但对个人和中小团队来说,KMS 基础设施本身就是负担。Ohook 把“常驻服务、定期续期、改动系统”这几件麻烦事全部去掉了。

一张流程图看懂“瞒天过海”

Ohook 的运行链路并不复杂,全程只发生在 Office 启动的那一瞬间:

关键机关在文件布局上。部署完成后,Office 目录里是这样的:

%programfiles%\Microsoft Office\root\vfs\System\ ├── sppc.dll ← 刚放进去的 Ohook 钩子库 └── sppcs.dll ← 符号链接,指向 C:\Windows\System32\sppc.dll(系统原版)

Windows 加载 DLL 时优先找程序自己目录里的文件,所以 Office 加载到的是 Ohook 的sppc.dll;而 Ohook 需要“转发”给系统原版时,就通过sppcs.dll这个符号链接找到真正的系统库。系统原版一个字节没动,只是借了一条“后门小路”——这也是它敢说自己“对系统零侵入”的原因。

动手前先花 2 分钟:认准版本、选对模式

Ohook 提供两个版本,别选错:

对比项普通版(推荐)Plus 版
拦截许可证检查
顺带改写注册表心跳值✅(把失败时间写到 2040 年)
系统侵入程度更小稍大
杀毒软件误报概率更低略高
适用场景绝大多数用户首选出现许可证横幅时再考虑

普通版只做“拦截返回值”这一件事;Plus 版会额外写入注册表项HKCU\Software\Microsoft\Office\16.0\Common\Licensing\Resiliency\TimeOfLastHeartbeatFailure,相当于告诉 Office“上次心跳失败发生在 2040 年”,从而跳过在线订阅检查。多数情况下普通版就够了,Plus 版留到遇到横幅问题时再用。

另外确认三件事:

  • 系统是Windows 10 / 11,64 位系统配 64 位 Office 就用sppc64.dll
  • Office 是Click-to-Run(C2R)安装版(新版安装器默认就是),订阅版 / Microsoft 365 系列最适合;
  • 命令行要以管理员身份运行。

想自己编译也不难:项目是标准 C 语言,Makefile 里写好了 MinGW 编译规则,一条make会同时产出 32/64 位的普通版和 Plus 版共四个 DLL。

Ohook 安装五步走(照着复制粘贴即可)

第 1 步:获取文件

git clone https://gitcode.com/gh_mirrors/oh/ohook cd ohook

也可以直接下载编译好的 DLL(64 位系统用sppc64.dll)。

第 2 步:创建符号链接

以管理员身份打开命令提示符,把系统原版sppc.dllsppcs.dll的名字“挂”到 Office 目录下:

mklink "%programfiles%\Microsoft Office\root\vfs\System\sppcs.dll" "%windir%\System32\sppc.dll"

第 3 步:复制钩子库

copy /y sppc64.dll "%programfiles%\Microsoft Office\root\vfs\System\sppc.dll"

第 4 步:安装空白密钥

根据你的版本选择对应密钥,用 Office 自带的 OSPP 工具安装(目录名可能随版本略有不同):

想解锁的版本空白密钥
Microsoft 365(家庭/个人订阅)NBBBB-BBBBB-BBBBB-BBBBG-234RY
Microsoft 365 企业应用版NBBBB-BBBBB-BBBBB-BBBCF-PPK9C
cscript "%programfiles%\Microsoft Office\Office16\OSPP.VBS" /inpkey:NBBBB-BBBBB-BBBBB-BBBBG-234RY

第 5 步:重启验证

获取文件 → 创建符号链接 → 复制钩子库 → 安装空白密钥 → 重启 Office │ │ │ │ │ │ │ │ │ └─ 打开 Word 看账户状态 │ │ │ └─ 30 秒搞定 │ │ └─ 30 秒搞定 │ └─ 30 秒搞定 └─ 约 1 分钟

全程算下来,通常一杯咖啡没喝完就装完了。

遇到“检查此设备许可证状态”横幅?改一行 hosts 即可

部分 Office 版本在许可证检查通过后,还会联网访问ols.officeapps.live.com查询订阅到期日。服务器查不到关联订阅,就会弹出一条“检查此设备许可证状态时出现问题”的横幅。

解决办法:编辑 hosts 文件(C:\Windows\System32\drivers\etc\hosts),加上一行:

0.0.0.0 ols.officeapps.live.com

保存后重启 Office 即可。如果你已经选了 Plus 版,它改写注册表心跳值的逻辑已经覆盖了这条路径,一般不需要再动 hosts。注意只追加这一行,别误删 hosts 里原有的内容。

装完怎么验收、性能掉不掉、哪些功能依然没有

验收很简单:打开 Word,进入“文件 → 账户”,许可证显示已授权、没有黄色警告条,编辑、保存、宏、加载项、新版函数等功能全部可用。

至于性能,看一下它对系统做了什么就放心了:

检查项Ohook 的实际表现
启动耗时仅启动时多执行一次函数拦截与改写,肉眼无感
常驻进程无,随 Office 进程一起加载和释放
内存 / CPU运行期间占用可忽略
磁盘占用仅增加约百 KB 级的两个文件
系统文件System32 中的原版 sppc.dll 完全不动

同时要有一说一,以下功能 Ohook 不会解锁:OneDrive 附赠的 1TB 存储、Python in Excel 这类云端在线能力,项目本身明确不支持。它解决的是“本地功能完整可用”这件事。

如果某次 Office 更新后功能又受限了,多半是更新把目录文件重置了——按上面五步重新部署一遍即可,属于常规维护。

你可能想问的几个问题(含避坑清单)

Q1:为什么不直接装 Mondo 2016 许可证?Mondo 是老版本许可证,对新版 Office 只做部分适配,产品策略文件里会缺新版本才有的策略项,哪些功能会受影响无法逐一验证。Ohook 用的是与你已装版本匹配的正式许可,功能对齐更可靠。

Q2:会被杀毒软件拦吗?普通版侵入性小,误报率低;如果被杀软标记,把相关文件加入白名单即可,并务必只从可信来源获取文件。

Q3:这是“永久”的吗?机制上,它让 Office 每次启动都能通过检查,不需要反复续期;如果 Office 大版本更新导致失效,重新部署一遍就好。

Q4:想还原怎么办?删除 OfficeSystem目录下的sppc.dllsppcs.dll两个文件即可,系统本身没被动过,随时可逆。

Q5:出问题找谁?项目主要面向授权合作方发布,不直接对普通用户提供支持;遇到问题建议参考官方合作方文档与社区中的部署经验。

避坑清单速记:

  • 命令行务必以管理员身份运行,否则mklink会失败;
  • 32 位 Office 的安装路径可能是Program Files (x86)
  • 空白密钥要和已装版本匹配,装错会白忙一场;
  • 改 hosts 前先备份原文件,只追加、不删除。

现在就动手,给 Office 一次“解禁”的机会

如果你正被“未授权产品”的黄色横幅困扰,或想给公司机房统一铺一套免维护的 Office 方案,现在就可以按本文的五步试一遍——整个流程不到十分钟,随时可逆、不伤系统,试错成本几乎为零。也欢迎把你的使用体验、不同版本下的兼容情况反馈给社区,帮更多人避坑。

最后提醒一句:本工具适合技术研究、学习与测试场景。请在符合当地法律与软件许可协议的范围内使用,经济条件允许时,还是优先支持正版订阅。

【免费下载链接】ohookAn universal Office "activation" hook with main focus of enabling full functionality of subscription editions项目地址: https://gitcode.com/gh_mirrors/oh/ohook

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

返回列表