超强Windows Defender一键卸载:Script_Run.bat核心功能全解析
你是否还在为Windows Defender后台占用资源而烦恼?尝试过手动禁用却频繁失效?本文将彻底剖析windows-defender-remover项目中Script_Run.bat的工作原理,带你掌握一键卸载Windows Defender的终极方案。读完本文你将获得:
- 三种模式的精准操作指南
- 底层注册表修改与文件清理逻辑
- 风险控制与系统恢复预案
- 常见问题的技术解决方案
一、脚本架构总览:模块化设计解析
Script_Run.bat采用三段式架构设计,通过参数解析、用户交互和功能执行三大模块实现完整的防御者移除流程。其核心版本控制机制确保兼容性,当前默认版本为12.8.4。
1.1 基础环境配置
@set defenderremoverver=12.8.4
@setlocal DisableDelayedExpansion
@echo off
pushd "%CD%"
CD /D "%~dp0"
- 版本控制:通过
defenderremoverver变量统一管理版本信息 - 环境隔离:
setlocal DisableDelayedExpansion防止变量扩展冲突 - 路径规范化:
CD /D "%~dp0"确保脚本在自身目录执行,避免相对路径错误
1.2 参数解析机制
支持4种启动参数,实现无交互直接执行特定功能:
| 参数 | 对应功能 | 适用场景 |
|---|---|---|
y/Y |
完全移除Defender及组件 | 自动化部署环境 |
a/A |
仅移除Defender保留UAC | 开发测试环境 |
s/S |
仅禁用安全缓解措施 | 性能优化场景 |
参数检测逻辑采用短路判断设计,优先匹配第一个有效参数:
IF "%1"== "y" GOTO :removedef
IF "%1"== "Y" GOTO :removedef
IF "%1"== "a" GOTO :removeantivirus
...
二、用户交互系统:菜单驱动设计
交互界面采用清晰的层级结构,通过精心设计的提示文本引导用户决策,同时提供关键风险预警。
2.1 菜单系统实现
echo ------ Defender Remover Script , version %defenderremoverver% ------
echo Select an option:
echo.
echo [Y] Remove Windows Defender Antivirus + Disable All Security Mitigations
echo [A] Remove Windows Defender only, but keep UAC Enabled
echo [S] Disable All Security Mitigations
choice /C:yas /N
- 视觉分隔:使用
cls清屏和echo.空行构建清晰的视觉层次 - 风险提示:明确告知"操作后需要重启"、"建议创建系统还原点"等关键信息
- 输入控制:通过
choice /C:yas /N限制输入范围,避免无效操作
2.2 选择分支逻辑
采用跳转标签设计实现功能分流,三个主要功能分支对应不同的清理策略:
if errorlevel==3 goto disablemitigations
if errorlevel==2 goto removeantivirus
if errorlevel==1 goto removedef
⚠️ 注意:
errorlevel判断采用倒序匹配,数值越大的选项需要先判断
三、核心功能模块深度解析
3.1 完全移除模式(Y选项)
该模式执行最彻底的清理流程,分为六个关键步骤:
3.1.1 禁用Hyper-V
bcdedit /set hypervisorlaunchtype off
通过修改启动配置数据存储(BCD),禁用Hyper-V虚拟机监控程序,防止Defender核心服务通过虚拟化技术保护自身进程。
3.1.2 UWP应用移除
Powershell -noprofile -executionpolicy bypass -file "%~dp0\RemoveSecHealthApp.ps1"
调用PowerShell脚本移除Windows安全中心UWP应用,绕过执行策略限制(-executionpolicy bypass)确保脚本执行权限。
3.1.3 注册表清理引擎
FOR /R %%f IN (Remove_defender\*.reg) DO PowerRun.exe regedit.exe /s "%%f"
FOR /R %%f IN (Remove_defender\*.reg) DO regedit.exe /s "%%f"
FOR /R %%f IN (Remove_SecurityComp\*.reg) DO PowerRun.exe regedit.exe /s "%%f"
- 双重执行机制:先通过
PowerRun.exe提权执行,再常规执行确保注册表修改生效 - 递归处理:
FOR /R遍历所有子目录下的.reg文件,典型注册表项包括:DisableAntivirusProtection.reg:关闭实时防护RemoveDefenderTasks.reg:删除计划任务RemoveServices.reg:禁用相关服务
3.1.4 文件系统清理(第一阶段)
针对Defender核心文件实施精准删除,涉及驱动程序、可执行文件和系统组件:
for %%d in (
"C:\Windows\System32\SecurityHealthSystray.exe"
"C:\Windows\System32\drivers\WdFilter.sys"
"C:\Windows\System32\smartscreen.dll"
...
) DO PowerRun cmd.exe /c del /f "%%d"
清理目标分为三类关键文件:
- 驱动文件:
WdFilter.sys、SgrmAgent.sys等内核驱动 - 执行文件:
smartscreen.exe、SecurityHealthService.exe等用户态程序 - 动态链接库:
wscsvc.dll、smartscreenps.dll等支撑组件
3.1.5 目录清理(第二阶段)
for %%d in (
"C:\Windows\WinSxS\amd64_security-octagon*"
"C:\ProgramData\Microsoft\Windows Defender"
"C:\Windows\SystemApps\Microsoft.Windows.AppRep.ChxApp_cw5n1h2txyewy"
...
) do PowerRun cmd.exe /c rmdir "%%~d" /s /q
采用通配符匹配删除整个目录树,重点清理:
- WinSxS组件存储中的Defender相关文件
- 程序数据目录中的Defender配置和日志
- UWP应用目录及相关服务文件
3.1.6 自动重启机制
echo Your PC will reboot in 10 seconds..
timeout 3
shutdown /r /f /t 10
shutdown /r:重启系统/f:强制关闭所有应用程序/t 10:10秒后执行重启
3.2 部分移除模式(A选项)
该模式保留用户账户控制(UAC)功能,主要差异在于注册表清理范围:
:: 仅执行Defender相关注册表清理
FOR /R %%f IN (Remove_defender\*.reg) DO PowerRun.exe regedit.exe /s "%%f"
FOR /R %%f IN (Remove_defender\*.reg) DO regedit.exe /s "%%f"
:: 不执行Remove_SecurityComp目录下的UAC相关注册表
文件清理列表与完全模式相同,但不修改UAC相关注册表项,适合需要基本安全控制的场景。
3.3 安全缓解措施禁用(S选项)
专注于性能优化,仅禁用系统安全缓解措施:
:disablemitigations
CLS
bcdedit /set hypervisorlaunchtype off
CLS
echo Disabling Security Mitigations...
FOR /R %%f IN (Remove_SecurityComp\*.reg) DO PowerRun.exe regedit.exe /s "%%f"
CLS
echo Your PC will reboot in 10 seconds..
timeout 3
shutdown /r /f /t 10
exit
主要修改与内存保护、代码执行防护相关的系统设置,包括:
- 数据执行保护(DEP)调整
- 控制流防护(CFG)禁用
- 内存完整性保护关闭
四、文件系统与注册表操作原理
4.1 PowerRun.exe特权提升机制
PowerRun.exe是实现高权限操作的核心工具,通过它执行的关键操作包括:
PowerRun cmd.exe /c del /f "%%d"
PowerRun cmd.exe /c rmdir "%%~d" /s /q
其工作原理类似于psexec或runas,但提供更直接的系统权限提升,绕过UAC限制直接获取管理员权限。
4.2 注册表修改策略
项目采用模块化注册表文件设计,位于以下目录:
Remove_defender/
├── DisableAntivirusProtection.reg
├── DisableDefenderPolicies.reg
├── RemoveDefenderTasks.reg
└── ...(共14个文件)
Remove_SecurityComp/
└── Remove_SecurityComp.reg
典型注册表修改包括:
- 服务禁用:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinDefend]
"Start"=dword:00000004
- 组策略锁定:
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender]
"DisableAntiSpyware"=dword:00000001
- 任务计划删除:
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\Windows Defender]
五、风险控制与系统恢复
5.1 操作风险评估
| 风险类型 | 严重程度 | 缓解措施 |
|---|---|---|
| 系统更新恢复Defender | 高 | 定期执行脚本或禁用Windows Update |
| 程序兼容性问题 | 中 | 创建系统还原点 |
| 安全软件安装冲突 | 高 | 仅在必要环境使用 |
| 数据恢复困难 | 中 | 执行前备份关键数据 |
5.2 恢复方案
-
系统还原:
rstrui.exe :: 启动系统还原向导 -
手动恢复注册表:
reg restore HKLM\SYSTEM\CurrentControlSet\Services "C:\Windows\System32\config\SYSTEM.bak" -
重新启用Defender:
sc config WinDefend start= auto net start WinDefend
六、高级应用与自动化部署
6.1 无人值守部署
通过命令行参数实现自动化操作:
:: 静默完全移除
Script_Run.bat y
:: 仅移除Defender核心组件
Script_Run.bat a
6.2 日志记录增强
修改脚本添加操作日志功能:
:: 在文件开头添加
set logfile="%~dp0\defender_removal_%date:~0,4%%date:~5,2%%date:~8,2%.log"
echo [%time%] Script started >> %logfile%
:: 在关键操作后添加日志
echo [%time%] Removed registry files >> %logfile%
6.3 自定义清理列表
扩展文件清理范围,添加自定义路径:
:: 在文件删除部分添加
for %%d in (
...
"C:\Your\Custom\Path\to\defender\related\files"
) DO PowerRun cmd.exe /c del /f "%%d"
七、常见问题解决方案
7.1 操作后系统无限重启
原因:关键系统文件误删或权限问题
解决:
- 进入安全模式(F8或Shift+重启)
- 执行系统还原
- 检查
C:\Windows\System32\drivers\目录完整性
7.2 脚本执行无反应
排查步骤:
- 确认以管理员身份运行
- 检查PowerRun.exe是否存在
- 临时关闭其他安全软件
- 执行
cmd /k Script_Run.bat查看错误输出
7.3 Windows更新后Defender复活
预防措施:
:: 禁用Windows Defender相关更新
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Services\7971f918-a847-4430-9279-4a52d1efe18d" /v "Enabled" /t REG_DWORD /d 0 /f
八、总结与展望
Script_Run.bat通过精心设计的批处理逻辑,实现了对Windows Defender的深度清理。其核心价值在于:
- 权限突破:通过PowerRun实现系统级权限操作
- 全面覆盖:注册表、文件系统、服务多维度清理
- 灵活控制:三种模式满足不同场景需求
未来版本可能增强的方向:
- 实时防护状态检测
- 系统更新防护机制
- 更精细的组件选择移除
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00- QQwen3-Coder-Next2026年2月4日,正式发布的Qwen3-Coder-Next,一款专为编码智能体和本地开发场景设计的开源语言模型。Python00
xw-cli实现国产算力大模型零门槛部署,一键跑通 Qwen、GLM-4.7、Minimax-2.1、DeepSeek-OCR 等模型Go06
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin08
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00