本文档为高级用户和开发人员提供有关 Microsoft Activation Scripts (MAS) 系统的详细技术信息。它涵盖了内部架构、代码结构、执行流程、激活机制和技术组件。有关安装说明,请参阅安装指南,有关特定激活方法的详细信息,请参阅激活方法下的相应页面。
MAS 采用模块化设计,以中央接口(MAS_AIO.cmd)协调各种激活方法和支持功能。其架构遵循基于命令的模式,具有集中的初始化和专门的激活模块。
来源:MAS/All-In-One-Version-KL/MAS_AIO.cmd1-400
MAS 的执行流程遵循从初始化到激活再到结果报告的预定义模式
来源:MAS/All-In-One-Version-KL/MAS_AIO.cmd22-303 MAS/All-In-One-Version-KL/MAS_AIO.cmd332-400
MAS 以关键的初始化步骤开始,以确保激活功能的一致环境
PathExt、SysPath、Path 和其他基本环境变量该脚本使用一种特定的重新启动技术来处理不同的系统架构
来源:MAS/All-In-One-Version-KL/MAS_AIO.cmd22-102
MAS 支持用于无人值守激活的命令行开关。命令行处理逻辑会提取并验证参数,然后相应地路由执行。
主要开关包括:
/HWID - HWID 激活/Ohook - Ohook 激活/Z- - TSforge 激活/K- - KMS 激活/KMS38 - KMS38 激活/S - 静默模式命令行处理发生在 MAS/All-In-One-Version-KL/MAS_AIO.cmd109-124,执行路由发生在 MAS/All-In-One-Version-KL/MAS_AIO.cmd294-308
MAS 包含全面的系统检测,用于识别:
这些信息通过以下方式检索:
系统检测方法表
| 信息 | 检测方法 | 代码位置 |
|---|---|---|
| Windows 内部版本 | 注册表和文件版本 | MAS_AIO.cmd1050-1052 |
| 系统架构 | 环境变量 | MAS_AIO.cmd30-40 |
| Windows 版本 | 注册表和 SoftwareLicensing | MAS_AIO.cmd1112-1145 |
| 激活状态 | WMI 查询 SoftwareLicensing | MAS_AIO.cmd1171-1173 |
| Office 存在 | 注册表和文件检测 | MAS_AIO.cmd2237-2245 |
| 服务状态 | 服务控制管理器 | MAS_AIO.cmd709-730 |
来源:MAS/All-In-One-Version-KL/MAS_AIO.cmd105-150 MAS/All-In-One-Version-KL/MAS_AIO.cmd1048-1175
MAS 出于各种目的与 Windows 注册表进行广泛交互
使用的主要注册表路径
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersionHKLM\SYSTEM\CurrentControlSet\Services\sppsvcHKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\StateHKCU\SOFTWARE\Microsoft\Office\16.0\Common\Licensing来源:MAS_AIO.cmd1112-1145 MAS/Separate-Files-Version/Check_Activation_Status.cmd152-183
HWID 激活通过以下方式为 Windows 创建永久数字许可证:
技术工作流程
来源:MAS/All-In-One-Version-KL/MAS_AIO.cmd550-1042
Ohook 通过以下方式提供永久 Office 激活:
实现涉及:
来源:MAS/All-In-One-Version-KL/MAS_AIO.cmd2069-2790
在线 KMS 激活使用密钥管理服务激活 Windows 和 Office
关键技术组件
来源:MAS/All-In-One-Version-KL/MAS_AIO.cmd3700-4500
MAS 包括一个全面的诊断系统,该系统:
激活状态检查组件(MAS/Separate-Files-Version/Check_Activation_Status.cmd) 使用以下方法提供详细的诊断信息:
来源:MAS/Separate-Files-Version/Check_Activation_Status.cmd197-241 MAS/Separate-Files-Version/Check_Activation_Status.cmd415-601
MAS 采用多层方法进行错误检测和处理
关键错误处理技术
激活失败时,脚本会提供详细的故障排除信息,包括:
来源: MAS/All-In-One-Version-KL/MAS_AIO.cmd707-766 MAS/All-In-One-Version-KL/MAS_AIO.cmd1426-1737
MAS 通过 Extract $OEM$ Folder 功能,为系统管理员和 OEM 厂商提供部署能力
生成的文件夹遵循以下结构
这使得组织能够
来源: MAS/All-In-One-Version-KL/MAS_AIO.cmd447-546
MAS 实施了多项安全措施
来源: MAS/All-In-One-Version-KL/MAS_AIO.cmd73-102 MAS/All-In-One-Version-KL/MAS_AIO.cmd1386-1419
MAS 支持一套全面的命令行参数,用于无人值守操作和特殊功能
| 参数 | 功能 | 描述 |
|---|---|---|
/HWID | HWID 激活 | 使用 HWID 方法激活 Windows |
/HWID-NoEditionChange | 不更改版本的 HWID | 不修改 Windows 版本的 HWID 激活 |
/Ohook | Ohook 激活 | 使用 Ohook 方法激活 Office |
/Ohook-Uninstall | 移除 Ohook | 卸载 Ohook 激活 |
/KMS38 | KMS38 激活 | 使用 KMS38 方法激活 Windows |
/K-WindowsOffice | 在线 KMS | 使用 KMS 同时激活 Windows 和 Office |
/K-Windows | Windows 在线 KMS | 仅使用 KMS 激活 Windows |
/K-Office | Office 在线 KMS | 仅使用 KMS 激活 Office |
/Z-WindowsESUOffice | TSforge Multiple | 用于 Windows、ESU 更新和 Office 的 TSforge 激活 |
/S | 静默模式 | 隐藏大部分输出以实现静默操作 |
此外,还可以组合使用命令行参数以实现全面的操作,例如:/HWID /Ohook /S 可静默激活 Windows (HWID) 和 Office (Ohook)。
来源: MAS/All-In-One-Version-KL/MAS_AIO.cmd294-308 MAS/All-In-One-Version-KL/MAS_AIO.cmd552-578
MAS 具有特定的系统要求才能正常运行
| 组件 | 要求 |
|---|---|
| Windows 版本 | Windows 7 SP1 或更高版本 / Windows Server 2008 R2 或更高版本 |
| 架构 | 支持 x86, x64, ARM64 |
| PowerShell | PowerShell 2.0 或更高版本,语言模式为完整模式 |
| .NET Framework | 4.0 或更高版本(内置于支持的 Windows 版本中) |
| 权限 | 需要管理员权限 |
| 互联网 | HWID 需要,其他方法可选 |
| Windows 更新 | HWID 需要正常运行的 Windows 更新服务 |
| Office 版本 | Office 2016 或更高版本(C2R 版本)的 Ohook |
兼容性说明
来源: MAS/All-In-One-Version-KL/MAS_AIO.cmd133-149 MAS/All-In-One-Version-KL/MAS_AIO.cmd583-626