Windows 10/11 把更新彻底禁用
2026-06-16 21:11:47
Windows 10/11 把更新彻底管住:三种方式、完整注册表说明与脚本
适用:Windows 10/11 专业版为主(家庭版大部分方法也可用)
场景:开发/工控/服务器,希望系统稳定,不被自动更新折腾
一、先说结论:三种「控制更新」思路
我自己折腾下来,Windows 更新大致有三种控制方式:
温和型:只通知,不自动下载/安装
激进型:直接禁用更新服务和自我修复
时间型:把「暂停更新」的时间改到几十年以后,并扩展下拉菜单的最大周数
实际使用中可以组合,例如:
用「只通知」保证不会自动装补丁
再配上「超长暂停」让系统多年不碰更新
如果是工控/生产环境,再加一层「禁用服务」
下面分章节详细展开。
二、修改注册表前一定要做的准备
备份注册表(至少导出相关分支)
Win + R → regedit 打开注册表编辑器
右键相应的分支(例如 WindowsUpdate)→ 导出 → 保存为 .reg
最好提前创建一个 系统还原点(控制面板 → 恢复 → 配置系统还原)
出问题时:
双击 .reg 还原
或用还原点回滚
三、让更新只在你同意时才进行(推荐)
3.1 原理
这是 Windows 早期「配置自动更新」策略隐藏后的后台接口。
我们在注册表里手动设置它,让系统进入:
只通知、由用户手动下载和安装更新
3.2 注册表路径与键
路径:
text
复制代码
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
如果 WindowsUpdate 或 AU 不存在,可以右键新建「项」。
需要的键(DWORD 32 位):
键名
值
含义
NoAutoUpdate
0
启用更新系统本身,但行为由 AUOptions 决定
AUOptions
2
仅通知,不自动下载、不自动安装
3.3 一键 .reg 文件示例
保存为 Win_Update_NotifyOnly.reg:
reg
复制代码
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU]
"NoAutoUpdate"=dword:00000000
"AUOptions"=dword:00000002
双击导入 → 重启一次。
3.4 生效效果
Windows 不会后台自动下载补丁
不会自动在你重启时「顺便安装更新」
发现更新时只会在设置界面或通知栏提示
你需要手动点「下载」才会真正安装
对于开发/生产环境,这是一个非常舒服的折中方案。
3.5 为什么 Win11 的"配置自动更新"不见了?GP 策略入口被隐藏的真相
如果你之前用过 Windows 10 或旧版 Windows 11,你一定知道一个非常经典的位置:
组策略编辑器(gpedit.msc)
计算机配置 → 管理模板 → Windows 组件 → Windows Update → 配置自动更新
这个策略允许你选择:
仅通知
自动下载但不安装
下载并计划安装
本地管理员自行选择设置
然而,从 Windows 11 的某些版本开始(特别是 22H2 之后),微软悄悄地......
3.6 为什么组策略被隐藏,但注册表依然有效?
这是因为 Windows Update 的核心控制最终落到注册表中路径就是:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
这也是所有组策略设置最终都会写入的位置。
虽然 UI 和 GP 入口被隐藏了,但 Windows Update 服务仍然会读取 AUOptions、NoAutoUpdate 这些键。
四、直接「硬禁」Windows 更新服务(激进方案,不推荐)
提醒:适合确实非常讨厌更新、或工控场景。普通家用不建议长期开启。
Windows 更新主要涉及:
wuauserv:Windows Update 服务
UsoSvc:Update Orchestrator Service
WaaSMedicSvc:Windows Update Medic,负责「自动修复更新」
一堆计划任务(任务计划程序里的 UpdateOrchestrator 分支)
4.1 手动图形界面操作(简单说明)
Win + R → services.msc
找到 Windows Update → 双击
启动类型:禁用
服务状态:点 停止
同样方式处理:
Update Orchestrator Service(如果能看到)
Windows Update Medic Service(有时只能用命令禁用)
再配合任务计划程序(taskschd.msc)里禁用:
任务计划程序库 → Microsoft → Windows → UpdateOrchestrator
和 WindowsUpdate 下的相关任务
4.2 一键批处理脚本示例(更实用)
Disable_Windows_Update.bat(管理员运行):
bat
复制代码
@echo off
echo === 停止并禁止 Windows 更新相关服务 ===
sc stop wuauserv
sc config wuauserv start= disabled
sc stop usosvc
sc config usosvc start= disabled
sc stop WaaSMedicSvc
sc config WaaSMedicSvc start= disabled
echo.
echo === 禁用计划任务 ===
schtasks /Change /TN "Microsoft\Windows\UpdateOrchestrator\Schedule Scan" /Disable
schtasks /Change /TN "Microsoft\Windows\UpdateOrchestrator\Schedule Scan Static Task" /Disable
schtasks /Change /TN "Microsoft\Windows\UpdateOrchestrator\UpdateModelTask" /Disable 2>nul
schtasks /Change /TN "Microsoft\Windows\WindowsUpdate\Scheduled Start" /Disable 2>nul
echo.
echo 完成。建议重启电脑。
pause
说明:
某些任务在不同版本中名字略有不同,2>nul 是为了忽略不存在任务的报错。
日后想恢复更新,需要对应写一个启用脚本。
这个方案和前面的 AUOptions=2,再配合「暂停更新」,基本就属于最高等级封印了。
五、把「暂停更新」从 5 周变成几十年:FlightSettingsMaxPauseDays
默认情况下,Windows 设置 → Windows 更新 → 暂停更新 下拉菜单只有:
暂停 1 周 ~ 暂停 5 周(共 35 天)
核心就是一个隐藏配置:
5.1 关键注册表路径与键
路径:
text
复制代码
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings
关键键(DWORD 32 位):
text
复制代码
FlightSettingsMaxPauseDays
含义:允许 UI 最大可设置的「暂停天数」上限。
5.2 设置示例:把「最大暂停」改成 20 年
20 年大约:20 × 365 ≈ 7300 天
你也可以用 3500 天(约 500 周)、36500 天(约 100 年)。
一键 .reg 示例(设置为 7300 天 ≈ 1042 周)
保存为 Win_Update_MaxPause_20Years.reg:
reg
复制代码
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings]
"FlightSettingsMaxPauseDays"=dword:00001c84
0x1C84 = 7300(十进制)
导入后:
完全关闭「设置」窗口
重新打开「设置 → Windows 更新」
点开「暂停更新」右边的下拉框
你会发现菜单里从「暂停 1 周」一直到上千周(取决于 MaxPauseDays / 7)
之后只要直接在 UI 里选择,例如「暂停 500 周」,Windows 会自动写好所有内部时间字段,不需要自己算日期。
六、「暂停更新」到底写在哪里?三个注册表路径的区别
这一块最容易搞混,这里系统梳理一下:
6.1 路径一:策略层(我们手动设置 AUOptions 的地方)
text
复制代码
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
作用:
管理员策略(组策略最终落到这里)
控制 自动更新模式:
NoAutoUpdate
AUOptions(2=仅通知)
特点:
不直接保存某次具体「暂停到什么时候」
影响更新行为的「策略级别」设定
6.2 路径二:策略状态层(PolicyState)
text
复制代码
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UpdatePolicy\PolicyState
常见键:
键名
作用(真实含义)
是否长期可改
FeatureUpdatePausePeriodInDays
当前这次 功能更新(大版本更新)暂停了多少天(由 UI 根据选择计算)。
❌ 不可长期手改(UI 会覆盖)
QualityUpdatePausePeriodInDays
当前这次 质量更新(补丁更新)暂停了多少天(同样由 UI 计算)。
❌ 不可长期手改(UI 会覆盖)
PauseFeatureUpdatesStartTime
本次功能更新暂停的开始时间(系统生成,不是配置)。
❌ 不推荐修改(系统会重写)
PauseFeatureUpdatesEndTime
功能更新暂停截止时间(UI 生成,PolicyState 版本,仅状态记录用)。
❌ 不推荐改(不是最终生效的)
PauseQualityUpdatesStartTime
本次补丁暂停的开始时间(系统生成)。
❌ 不推荐改(会被刷新)
PauseQualityUpdatesEndTime
本次补丁暂停的截止时间(由 UI 自动生成,用于内部状态记录)。
❌ 不推荐改(不保证生效)
作用:
记录 当前这一次暂停设置的状态,属于更新引擎内部使用的数据。
特点:
当你在 UI 里选择「暂停 1 周 / 5 周 / N 周」时,这里的值会被自动重写
你手动修改这里 → 只要再点一次 UI 的暂停按钮,就会被覆盖
更适合「观察当前状态」,不适合长期手工改来控制更新
**关键:**别把这里当成「配置项」,它更像是「当前状态快照」。
6.3 路径三:UX 层(Settings)
text
复制代码
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings
常见键:
键名
作用
是否长期可改
PauseFeatureUpdatesStartTime
功能更新暂停的开始时间
△ 可改(意义不大)
PauseFeatureUpdatesEndTime
功能更新暂停截止日期
✔ 可改
PauseQualityUpdatesStartTime
补丁暂停开始时间
△ 可改
PauseQualityUpdatesEndTime
补丁暂停截止日期
✔ 可改
PauseUpdatesStartTime
统一暂停开始时间
△ 可改
PauseUpdatesExpiryTime
UI 显示的截止日期
✔ 可改(界面用)
FlightSettingsMaxPauseDays
UI 下拉菜单最大可暂停天数
✔ 强烈推荐
作用:
这是 Windows 11 新设置应用读取和写入的「用户体验层」。
UI 显示「已暂停到 xxxx 年 xx 月 xx 日」就是看这里。
特点:
真正决定 UI 显示内容
我们通过修改 FlightSettingsMaxPauseDays 就是利用了这个层
如果你非常熟,可以直接改 PauseFeatureUpdatesEndTime 把日期改到 2039 / 3000 年
推荐实践:
扩展暂停上限 → 改 FlightSettingsMaxPauseDays
想强制暂停到具体日期 → 直接改 UX\Settings 下的 PauseXXXEndTime
6.4 UpdatePolicy vs UX --- 一张图理解
项
UpdatePolicy(PolicyState)
UX(Settings)
性质
系统运行时的状态记录
设置应用的真实配置
类似
缓存、状态机
设置、配置文件
写入者
Windows Update 引擎
你 + 设置应用
更新频率
非常频繁(扫描、策略刷新都会动)
只有你操作 UI 时才变
是否会被覆盖
✔ 会(下一秒都可能)
✔ 会(若你点暂停按钮)
可否长期使用
❌ 不行
✔ 可以
推荐用途
查看状态
配置暂停行为
七、进阶:直接把暂停日期改到 2039/3000 年
如果你已经习惯了注册表操作,也可以不用在 UI 点「暂停 500 周」,
而是直接把截止时间写成一个远未来的日期,例如 2039 或 3000 年。
路径仍然是:
text
复制代码
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings
常用字符串(REG_SZ)键:
PauseFeatureUpdatesEndTime
PauseQualityUpdatesEndTime
PauseUpdatesExpiryTime(整体显示用)
值格式类似:
text
复制代码
2039-08-10T06:14:45Z
3000-01-01T00:00:00Z
你可以配一个 .reg,例如暂停到 3000 年:
reg
复制代码
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings]
"PauseFeatureUpdatesStartTime"="2024-01-01T00:00:00Z"
"PauseFeatureUpdatesEndTime"="3000-01-01T00:00:00Z"
"PauseQualityUpdatesStartTime"="2024-01-01T00:00:00Z"
"PauseQualityUpdatesEndTime"="3000-01-01T00:00:00Z"
"PauseUpdatesStartTime"="2024-01-01T00:00:00Z"
"PauseUpdatesExpiryTime"="3000-01-01T00:00:00Z"
注意:
只要你之后 不再去 UI 里重新点「暂停 1 周 / 2 周」,这些远期日期就会一直保持有效。
八、恢复默认更新设置的方法
如果哪天你想恢复系统正常更新,大致需要做:
取消 AU 策略:
reg
复制代码
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU]
"NoAutoUpdate"=-
"AUOptions"=-
或直接删除 AU 项。
删除或重置 FlightSettingsMaxPauseDays(可改回 35 或直接删除)
在设置 → Windows 更新 中点击:
「继续更新」
确认不再暂停
如果你禁用了服务,还要用脚本把服务改回「手动 / 自动」并启动。
九、推荐组合方案(给开发/工控用户)
如果你也是做软件开发、工控、图像采集之类(对系统稳定性极度敏感),我自己的推荐是:
必做:AUOptions=2(只通知)
强烈推荐:FlightSettingsMaxPauseDays = 36500(约 100 年)
可选:用 UI 暂停更新到一个很远的日期(十几年以后)
在需要绝对稳定的机器上:禁用 Windows Update 服务 + WaaSMedicSvc + 相关计划任务
这样:
系统不会偷偷下载和安装更新
你还有余地手动检查和安装重要补丁
真正跑生产的机台可以完全与更新断开,避免夜里自动重启之类的灾难
十、结语
Windows 10/11 的更新系统本质上是:
一堆服务 + 策略 + 状态 + UI 的组合
看起来很复杂,但理顺了几个关键注册表路径:
Policies\...\WindowsUpdate\AU
决定「自动更新的模式」(只通知 / 自动下载 / 自动安装)
WindowsUpdate\UpdatePolicy\PolicyState
记录当前这一次暂停与策略状态(更像日志/状态,不建议手改)
WindowsUpdate\UX\Settings
控制 UI 显示、暂停的起止时间、最大暂停天数等
再配合服务与计划任务,就能把系统更新稳稳地掌握在自己手里。
你完全可以根据本文,把这几种方案组合成适合自己的「禁更新配置」,
既不给系统乱动的机会,又保留了你在真正需要时手动更新的能力。
方式
能否阻止自动下载
能否阻止自动安装
持久性
推荐程度
1. 注册表方式(AUOptions=2)
✔ 完全阻止
✔ 阻止
✔ 永久有效
⭐⭐⭐⭐⭐(最推荐)
2. 禁用更新服务(wuauserv + WaaSMedic 等)
✔ 完全阻止
✔ 完全阻止
❗有时会被系统恢复
⭐⭐⭐⭐(硬核)
3. 设置"暂停更新日期到很久以后"
✔ 阻止(期间不更新)
✔ 阻止(期间不更新)
❗时间到期会自动恢复
⭐⭐(临时方案)
------以上,就是我折腾 Windows 更新的一整套记录与总结。