news 2026/8/18 13:32:46

换个思路实现 Office 永久激活:开源钩子 Ohook 如何点亮 Microsoft 365 全部功能

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
换个思路实现 Office 永久激活:开源钩子 Ohook 如何点亮 Microsoft 365 全部功能

换个思路实现 Office 永久激活:开源钩子 Ohook 如何点亮 Microsoft 365 全部功能

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

开源激活工具 Ohook 的目标很朴素:让订阅版的 Microsoft 365 / Office 在没有任何授权的情况下,也能让官方客户端自己认定"已授权",从而实现 Office 永久激活的效果。它不修改系统核心文件、不依赖 KMS 服务器、没有常驻后台进程,整套机制的核心代码只有几百行。如果你正在寻找 Microsoft 365 免费激活方法,或者想弄明白"许可证钩子"到底是怎么工作的,这篇 Ohook 安装教程会把你从原理讲到实操。

先看结论:不用续费,功能照样全开

装上 Ohook 之后,打开 Word、Excel、PowerPoint,常见的体验是这样的:订阅到期弹窗不再出现,原本置灰的高级功能全部恢复可用,Excel 里那些依赖订阅授权的数据分析能力也能正常使用。

需要提前说清楚的是,它的思路和传统"破解"完全不同——Ohook 不做任何加密算法的拆解,也不往系统里塞后门。它做的事情只有一件:在 Office 询问"我有没有合法许可证"的时候,让答案永远是"有"。

白话原理:Office 问一句,Ohook 抢答一句

检查只发生在启动那一下

Windows 上 Office 的许可证校验并不复杂。客户端启动时,会调用系统软件授权服务提供的一个接口——SLGetLicensingStatusInformation——去查询当前设备的授权状态。查完这一次,后续运行基本就不再校验了。这就是整个机制的突破口:只要拦住这一次查询,就拦住了全部。

钩子怎么"狸猫换太子"

Windows 加载 DLL 时有个默认规则:应用程序所在目录优先于系统目录。Ohook 利用这一点,把一个特制的sppc.dll放进 Office 的目录里。于是 Office 启动时,加载的是这份"冒牌"库,而不是系统自带的真库。

冒牌库做了两件事(对应 sppc.c 源码):

  1. 先把真正系统库的查询结果拿回来;
  2. 再逐条检查返回的授权状态,只要不是"未授权"的 SKU,就统一改写为"已授权"(SL_LICENSING_STATUS_LICENSED),同时把宽限期、失败原因、过期时间等字段全部清零。

真正系统库的调用没有被跳过,只是返回值被"微调"了。所以 Office 拿到的数据结构是完整合法的,不存在缺字段导致的崩溃风险。

其余函数为什么要"转发"

sppc.dll不止一个导出函数,Office 偶尔也会调用其他接口。Ohook 的做法是把这些函数全部"转发"给系统真库——项目在安装时会先建立一个名为sppcs.dll的符号链接,指向系统原本的sppc.dll(定义见 sppc.def)。冒牌库只改写许可证状态这一个函数,其余几十个函数原样透传。翻译成大白话:门卫换了人,但开门的钥匙和房子都没动。

三个原则,让它的"安全性"可以讲得清楚

  • 不动系统文件:整个安装过程只是新增一个符号链接和一个 DLL,Windows 原有文件一个都不碰;
  • 随时可回滚:把 Office 目录里新增的两个文件删掉,一切恢复原状,不需要重装系统或修复 Office;
  • 与版本无关:钩子拦截的是接口调用而不是某个版本号的特定逻辑,所以 Office 更新后通常依然有效。

这也是它和那些"替换系统授权文件"的老办法之间最本质的区别。

标准版还是加强版:两分钟搞清选哪个

项目提供了两种构建,差异在 Makefile 里用PLUS_BUILD宏区分:

  • 标准版sppc32.dll/sppc64.dll):只做许可证状态的拦截改写,行为最干净;
  • 加强版sppcplus32.dll/sppcplus64.dll):在标准版基础上,额外往注册表写入一条TimeOfLastHeartbeatFailure记录,用来阻断 Office 的联网订阅检查。

建议绝大多数用户选标准版。加强版多写了一条注册表项,被安全软件误报的概率也更高,属于"非必要不用"的配置。

小白也能完成的三步激活流程

下面以 64 位系统上的 C2R(即点即用)版 Office 为例。请先以管理员身份打开命令提示符。

第 1 步:把仓库拉到本地

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

第 2 步:给 Office 目录铺好"替身"

先把系统真库"挂"进 Office 目录,名字改成sppcs.dll

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

再把钩子库复制进去,名字用sppc.dll(32 位 Office 就用sppc32.dll):

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

第 3 步:安装空白密钥

给目标版本安装一个空密钥,让系统认为"这台设备有订阅产品":

  • Microsoft 365 家庭版:NBBBB-BBBBB-BBBBB-BBBBG-234RY
  • Microsoft 365 企业应用版:NBBBB-BBBBB-BBBBB-BBBCF-PPK9C

完成之后重启 Word 或 Excel,在"文件 → 账户"里就能看到授权状态已经变成已激活。整个流程不会超过几分钟,这就是完整的 Microsoft 365 免费激活方法。

激活后失效?四类坑的排查清单

弹"检查此设备许可证状态时出现问题"横幅

部分 Office 版本会在启动后联网查询订阅到期日,查询失败就会弹横幅。在hosts文件末尾加一行即可绕过:

0.0.0.0 ols.officeapps.live.com

如果不想动 hosts,也可以换用加强版,它通过注册表值达到同样效果。

杀毒软件把 DLL 报毒

钩子类工具被误报很常见。优先换回标准版(代码路径更短、行为更少),仍报毒就把sppc.dll加入白名单,并确认文件确实来自官方仓库克隆。

想用 Mondo 许可证"凑合"

有人会用 Mondo 2016 的许可证装到新版本上,图个省事。但老许可证的产品策略并不完整,新版 Office 的许多策略条目(形如office-UUID)在旧许可证里根本不存在,哪些功能会悄悄失效根本无从排查。Ohook 的做法是让"正确版本的许可证"生效,功能完整性反而是它的优势。

指望它解锁在线服务

OneDrive 的 1TB 空间、Python in Excel 这类云端订阅功能,Ohook 并不会启用。它的边界很清楚:只管本地客户端的授权状态,云端那部分它管不着。

进阶玩法:给整栋办公室一键部署

IT 管理员可以把部署写成一段脚本,批量推到员工机器:

@echo off set "OFDIR=%programfiles%\Microsoft Office\root\vfs\System" if not exist "%OFDIR%" set "OFDIR=%programfiles(x86)%\Microsoft Office\root\vfs\System" if not exist "%OFDIR%" ( echo 未找到 C2R 版 Office 目录,部署中止。 exit /b 1 ) mklink "%OFDIR%\sppcs.dll" "%windir%\System32\sppc.dll" copy /y sppc64.dll "%OFDIR%\sppc.dll" echo 部署完成,请让员工重启 Office 并检查账户状态。

脚本自动兼容 64 位和 32 位 Office 的目录差异,跑完就收工。

收尾:行动清单与合规提醒

动手之前,记住这张清单:

  1. 只从官方仓库克隆,核对文件完整性;
  2. 默认选标准版,减少系统写入;
  3. 部署前后各截一张授权状态图,方便对比排查;
  4. 保留符号链接和 DLL 的备份,随时可逆。

最后照例说一句:Ohook 项目以 MIT 协议开源,代码完全公开可审计,但它依然只应服务于技术研究与学习。不同国家与地区对软件许可的要求各不相同,请务必在遵守当地法律和微软许可条款的前提下使用,支持正版始终是最稳妥的选择。若只是出于学习目的,这个"几百行代码撬动整个授权体系"的思路,本身就是一份很值得研读的教材。

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

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/18 13:32:30

高效数据传输:Protobuf实战指南

想象你经营一家跨国快递公司。 每天有数百万个包裹在全球流转。每个包裹里装着不同的东西——有人寄衣服,有人寄文件,有人寄电子产品。你需要一套通用的打包标准:不管里面装什么,所有分拣中心都能看懂包裹单,所有传送带都能运输,所有仓库都能存放。 JSON就像用纸箱打包…

作者头像 李华
网站建设 2026/8/18 13:31:50

099、STM32项目分享开源:自习室智能监控系统

目录 一、项目成品图片 二、项目功能简介 1.主要器件组成 2.功能详解介绍 三、项目原理图设计 四、项目PCB硬件设计 项目PCB图 五、项目程序设计 六、项目实验效果 ​编辑 七、项目包含内容 一、项目成品图片 本课题设计一款基于单片机的自习室智能监控系统&#x…

作者头像 李华
网站建设 2026/8/18 13:31:37

Swift 技术 OSS上存图片

一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络&#xff0…

作者头像 李华
网站建设 2026/8/18 13:29:17

感知元素工程:人工认知系统的入口层构建

感知元素工程:人工认知系统的入口层构建摘要作者:东塬一老翁技术支持:WSaiOS多模态智能技术研发工作室人工认知系统的根本挑战在于如何使人工个体不仅“接收”外部信息,而且能够“感知”世界。本文基于ICAI(Individual…

作者头像 李华
网站建设 2026/8/18 13:28:34

【2014-04-22】使用XAMPP运行DVWA

[历史归档] 本文原发布于 cstriker1407.info 个人博客,内容为历史存档,仅供参考。 发布时间: 2014-04-22 | 标题:使用XAMPP运行DVWA | 分类: 操作系统 / 安全 | 标签&#xff…

作者头像 李华