随着 Windows 11 25H2 及后续版本深度集成 AI 功能,从 Copilot 到 Recall,从 AI Fabric Service 到 AI Actions,微软正将 AI 能力渗透到操作系统的各个角落。然而,对于注重性能、隐私和安全的企业环境与个人用户而言,这些 AI 功能可能成为资源消耗、数据收集和攻击面扩大的源头。在此背景下,开源工具 RemoveWindowsAI 应运而生,它通过系统级 Hook 机制、注册表清理策略与创新的 EOL(End of Life)技巧,实现了对 Windows AI 功能的强制移除与可控恢复。
Windows AI 功能强制移除的需求背景
Windows 11 中的 AI 功能并非简单的应用程序,而是深度集成到系统核心的组件。这些组件具有以下特点:
- 系统级集成:AI 功能通过 Windows 组件存储(CBS)、Appx 包、注册表键和系统服务等多个层面集成
- 自动恢复机制:Windows Update 会定期重新安装被移除的 AI 组件
- 权限限制:许多 AI 包被标记为 "不可移除"(Nonremovable),标准卸载方法无效
- 跨组件依赖:AI 功能涉及多个系统组件,如 Edge 浏览器、Paint、Notepad 等
根据 Tom's Hardware 的报道,RemoveWindowsAI 能够在数秒内禁用 Windows 11 中的所有 AI 功能,从 Copilot 到 Recall,再到各种 AI 辅助功能。这种强制移除的需求主要源于:
- 性能优化:AI 功能常驻内存,占用 CPU 和 GPU 资源
- 隐私保护:防止 AI 功能收集用户数据和行为模式
- 安全加固:减少攻击面,避免 AI 组件成为安全漏洞
- 合规要求:满足特定行业对 AI 功能使用的限制
系统级 Hook 机制分析
RemoveWindowsAI 的核心创新在于其系统级 Hook 机制,这些 Hook 在多个层面拦截和修改系统行为:
1. CBS 存储 Hook
Component-Based Servicing(CBS)是 Windows 的核心组件管理系统。RemoveWindowsAI 通过安装自定义的 Windows Update 包来 Hook CBS 存储:
# 安装自定义包阻止 AI 组件重新安装
Add-WindowsPackage -Path "C:\Windows" -PackagePath "CustomAIBlock.cab"
这个自定义包在 CBS 存储中创建一个 "占位符",阻止系统重新下载和安装 AI 相关组件。当 Windows Update 尝试安装 AI 更新时,CBS 会检测到这个自定义包的存在,认为相关组件已经安装,从而跳过安装过程。
2. 注册表策略 Hook
AI 功能的启用状态主要通过注册表控制。RemoveWindowsAI 在多个注册表路径设置策略值:
HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsCopilot- 禁用 CopilotHKLM\SOFTWARE\Policies\Microsoft\Windows\Recall- 禁用 RecallHKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced- 隐藏 Copilot 按钮
这些注册表 Hook 不仅禁用功能,还隐藏相关 UI 元素,确保用户不会意外触发 AI 功能。
3. 服务与任务 Hook
AI 功能通常通过 Windows 服务和计划任务实现后台运行。RemoveWindowsAI 强制移除所有 Recall 相关的计划任务:
# 强制移除 Recall 计划任务
Get-ScheduledTask -TaskName "*Recall*" | Unregister-ScheduledTask -Confirm:$false
同时,脚本会禁用 AI Fabric Service 等关键服务,防止 AI 功能在后台重新激活。
注册表清理策略与 EOL 技巧
注册表清理的层次化策略
RemoveWindowsAI 采用层次化的注册表清理策略,从全局到用户级进行全面清理:
第一层:全局策略设置
# 设置全局 Copilot 禁用策略
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsCopilot" -Name "TurnOffWindowsCopilot" -Value 1 -Type DWord
第二层:功能特定禁用
- 禁用 Input Insights 和输入数据收集
- 禁用 Edge 中的 Copilot 上下文功能
- 禁用 Paint 中的 AI 图像生成
- 禁用 Notepad 中的 Rewrite AI 功能
第三层:用户级偏好设置
# 隐藏用户界面中的 AI 元素
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ShowCopilotButton" -Value 0 -Type DWord
EOL(End of Life)技巧:绕过系统限制
Windows 将某些 AI 组件标记为 "不可移除",这是标准卸载方法的主要障碍。RemoveWindowsAI 采用创新的 EOL 技巧绕过这一限制:
-
注册表欺骗:首先修改组件的注册表信息,将其标记为 "已结束生命周期"
# 将组件标记为 EOL Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\<PackageName>" -Name "CurrentState" -Value 7 -
DISM 卸载:使用 Deployment Image Servicing and Management(DISM)工具卸载标记为 EOL 的组件
dism /Online /Remove-Package /PackageName:<PackageName> /NoRestart -
Appx 包移除:最后使用标准 PowerShell cmdlet 移除残留的 Appx 包
Remove-AppxPackage -Package <PackageName> -AllUsers
这种 EOL 技巧的关键在于利用了 Windows 组件管理系统的内部逻辑:当组件被标记为生命周期结束时,系统会允许其被移除,而不会触发保护机制。
系统恢复保障机制
强制移除系统组件存在风险,因此 RemoveWindowsAI 设计了完善的恢复保障机制:
1. 备份模式(-backupMode)
在移除操作前启用备份模式,脚本会创建系统状态的完整快照:
# 启用备份模式
.\RemoveWindowsAi.ps1 -backupMode
备份内容包括:
- 所有被修改的注册表键值
- 被移除的 Appx 包信息
- CBS 存储中的组件状态
- 系统服务配置
- 计划任务定义
备份数据存储在 %ProgramData%\RemoveWindowsAI\Backup\ 目录中,采用 JSON 格式确保可读性和可恢复性。
2. 恢复模式(-revertMode)
如果需要恢复系统到原始状态,可以使用恢复模式:
# 恢复系统到移除前的状态
.\RemoveWindowsAi.ps1 -revertMode
恢复过程包括:
- 从备份文件中读取原始配置
- 恢复所有注册表键值
- 重新安装被移除的 Appx 包
- 恢复 CBS 存储中的组件
- 重新启用系统服务和计划任务
3. 渐进式恢复策略
考虑到某些组件可能无法完全恢复,脚本采用渐进式恢复策略:
- 优先恢复关键组件:首先恢复影响系统稳定性的核心组件
- 选择性跳过:对于恢复失败的非关键组件,记录日志但不中断恢复过程
- 验证机制:恢复完成后验证系统功能,确保没有残留问题
安全可控的 AI 功能禁用实践
企业环境部署指南
在企业环境中部署 RemoveWindowsAI 需要遵循以下最佳实践:
1. 测试环境验证
- 在隔离的测试环境中验证脚本功能
- 测试不同 Windows 11 版本(25H2、26H1 等)
- 验证备份和恢复功能的可靠性
2. 分阶段部署
- 第一阶段:仅禁用非关键 AI 功能(如 Copilot UI 元素)
- 第二阶段:禁用数据收集功能(Input Insights、Recall)
- 第三阶段:移除核心 AI 组件(AI Fabric Service、AI Actions)
3. 监控与审计
- 部署后监控系统性能和稳定性
- 审计注册表修改和文件变更
- 建立回滚预案和应急响应流程
技术参数与阈值配置
RemoveWindowsAI 支持多种技术参数配置,实现精细化的控制:
超时参数配置
# 设置各操作阶段的超时时间(秒)
$registryTimeout = 30
$packageRemovalTimeout = 120
$cbsCleanupTimeout = 180
重试机制配置
# 配置失败重试次数和间隔
$maxRetries = 3
$retryInterval = 5 # 秒
资源使用限制
# 限制脚本资源使用,避免影响系统性能
$cpuLimit = 50 # CPU 使用率限制(%)
$memoryLimit = 512MB # 内存使用限制
风险缓解策略
尽管 RemoveWindowsAI 设计了完善的恢复机制,但仍需注意以下风险:
1. 杀毒软件误报
- 将脚本目录添加到杀毒软件白名单
- 使用数字签名验证脚本完整性
- 在部署前与安全团队协调
2. 系统更新兼容性
- 在重大 Windows 更新前暂停 AI 功能移除
- 监控 Windows Update 日志,检测 AI 组件重新安装尝试
- 建立更新后的验证流程
3. 应用程序兼容性
- 测试关键业务应用在 AI 功能禁用后的兼容性
- 为依赖特定 AI 功能的应用建立例外列表
- 准备应用特定的恢复方案
总结与展望
RemoveWindowsAI 代表了系统级 AI 功能管理的创新方向。通过系统级 Hook 机制、层次化的注册表清理策略和创新的 EOL 技巧,它实现了对 Windows AI 功能的强制移除,同时通过完善的备份和恢复机制确保了系统安全。
从技术角度看,这个工具的几个关键创新值得关注:
- CBS 存储的逆向工程:深入理解 Windows 组件管理系统,实现持久的 AI 功能禁用
- EOL 技巧的创造性应用:绕过系统保护机制,实现 "不可移除" 组件的清理
- 渐进式恢复架构:确保即使在部分恢复失败的情况下,系统仍能保持稳定运行
随着 Windows AI 功能的不断演进,类似的工具和技术将变得更加重要。未来的发展方向可能包括:
- AI 功能选择性禁用:允许用户选择性地禁用特定 AI 功能,而不是全部移除
- 实时监控与防护:防止 AI 功能在系统运行期间重新激活
- 跨版本兼容性:适应不同 Windows 版本和更新通道的 AI 功能实现差异
- 企业级管理界面:提供集中化的 AI 功能管理控制台
对于注重隐私、安全和性能的用户和组织而言,掌握 Windows AI 功能的强制移除技术不仅是技术选择,更是对数字自主权的维护。RemoveWindowsAI 提供了一个起点,展示了通过深入系统理解和创新技术应用,用户可以在不牺牲系统稳定性的前提下,重新获得对操作系统的控制权。
资料来源
- GitHub - zoicware/RemoveWindowsAI: https://github.com/zoicware/RemoveWindowsAI
- Remove Windows AI 官方网站: https://removewindowsai.com/
- Tom's Hardware 报道: https://www.tomshardware.com/software/windows/this-github-script-claims-to-wipe-all-of-windows-11s-ai-features-in-seconds-removewindowsai-can-disable-every-single-ai-feature-in-the-os-from-copilot-to-recall-and-more