微信搜一搜关注公众号

Windows 常见故障 PowerShell 修复命令

DNPU2025-09-03

以下是针对 Windows 系统常见故障的 PowerShell 修复命令,按故障类型分类整理,涵盖系统文件、更新、启动、应用、网络等场景,建议以“以管理员身份运行”。

系统文件与镜像修复

1、扫描并修复损坏的系统文件

# 扫描并修复损坏的系统文件(基础修复)
sfc /scannow
# 扫描并将修复结果保存到日志,离线修复(适用于无法启动时)
sfc /scannow /offbootdir=C:\ /offwindir=C:\Windows

作用:通过系统文件检查器(SFC)扫描所有受保护的系统文件,并用缓存中的完好文件替换损坏文件。

说明:若提示 “无法修复”,需先运行 DISM 修复系统镜像。

2、修复系统镜像(适用于 SFC 失败时)

# 扫描镜像健康状态
DISM /Online /Cleanup-Image /ScanHealth
# 检查镜像可修复性
DISM /Online /Cleanup-Image /CheckHealth
# 用官方源修复镜像(需联网)
DISM /Online /Cleanup-Image /RestoreHealth
# 用本地镜像文件修复(需提前准备install.wim)
DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:C:\install.wim:1 /LimitAccess

作用:修复 Windows 系统镜像(WIM/ESD)中的损坏,为 SFC 提供完好的文件来源。

Windows 更新故障修复

1、重置 Windows 更新组件

# 停止更新相关服务
Stop-Service -Name wuauserv, cryptSvc, bits, msiserver -Force
# 清理更新缓存
Remove-Item -Path "C:\Windows\SoftwareDistribution\*" -Recurse -Force -ErrorAction SilentlyContinue
Remove-Item -Path "C:\Windows\System32\catroot2\*" -Recurse -Force -ErrorAction SilentlyContinue
# 注册相关DLL文件
regsvr32.exe /s atl.dll
regsvr32.exe /s urlmon.dll
regsvr32.exe /s mshtml.dll
# 重启服务
Start-Service -Name wuauserv, cryptSvc, bits, msiserver

作用:解决更新卡住、失败(如 0x80070005、0x80240034 等错误),清除旧缓存并重启核心服务。

2、查看更新日志(排查失败原因)

Get-WindowsUpdateLog

作用:生成详细的更新日志文件(保存到桌面),可查找更新失败的具体原因。

3、卸载有问题的更新

# 列出已安装的更新(按安装时间排序)
Get-HotFix | Sort-Object InstalledOn -Descending
# 卸载指定更新(替换KB编号)
wusa /uninstall /kb:123456 /quiet /norestart

启动与引导故障修复

1、修复启动配置(BCD)

# 重建BCD配置(适用于启动失败、黑屏)
# 备份当前BCD配置
bcdedit /export C:\BCD_Backup
# 修复MBR(主引导记录)
bootrec /fixmbr
# 修复分区引导扇区
bootrec /fixboot
# 扫描系统中可启动的Windows安装
bootrec /scanos
# 重建BCD配置
bootrec /rebuildbcd
# 重置BCD存储
bcdedit /deletevalue {default} recoveryenabled
bcdedit /deletevalue {default} osdevice

说明:需在高级启动模式(如安全模式)或 PE 环境中运行,修复 MBR 和启动配置数据。

2、检查启动项状态

# 列出所有启动项
bcdedit /enum all
# 修复安全模式启动项
bcdedit /set {safeboot} device partition=C:

作用:列出当前系统的启动项配置,可排查异常启动项(如冗余或损坏的条目)。

应用与商店故障修复

1、重新注册所有 Microsoft Store 应用

# 重新注册当前用户的所有UWP应用
Get-AppxPackage | ForEach-Object {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml" -ErrorAction SilentlyContinue}
# 重新注册所有用户的UWP应用
Get-AppxPackage -AllUsers | ForEach-Object {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml" -ErrorAction SilentlyContinue}
# 仅修复系统内置核心应用(如开始菜单、设置)
Get-AppxPackage -AllUsers | Where-Object {$_.Name -like "Microsoft.Windows.*" -or $_.Name -like "Microsoft.UI.*"} | ForEach-Object {Add-AppxPackage -Register "$($_.InstallLocation)\AppXManifest.xml" -ForceApplicationShutdown}

作用:修复应用闪退、图标消失、无法打开(如开始菜单无响应)。

2、重置 Microsoft Store

wsreset.exe

作用:清空商店缓存,解决商店无法加载、下载失败等问题(运行后会自动重启商店)。

3、卸载并重新安装有问题的应用

# 卸载指定应用(替换应用名称)
Remove-AppxPackage -Package "Microsoft.Windows.Calculator_10.2103.8.0_x64__8wekyb3d8bbwe"
# 修复应用卸载残留(删除无效注册表项)
Get-ItemProperty "HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*" | Where-Object {$_.DisplayName -eq $null} | Remove-Item -Recurse -Force

网络故障修复

1、重置网络适配器与配置

# 重置网络栈(解决无法上网、IP冲突等)
netsh int ip reset
netsh winsock reset
# 重置网络适配器配置
Get-NetAdapter | Restart-NetAdapter -Force
# 重新安装网络适配器驱动(需重启)
Get-NetAdapter | Uninstall-Driver -Confirm:$false
# 重启网络服务
Restart-Service -Name Dhcp, NetworkStoreInterfaceService, NlaSvc -Force

2、释放并更新 DNS 缓存

# 释放并更新IP地址
ipconfig /release
ipconfig /renew
# 刷新DNS缓存
ipconfig /flushdns
# 重置DNS客户端服务
Restart-Service dnscache -Force

3、查看网络适配器状态(排查硬件 / 驱动问题)

Get-NetAdapter | Select-Object Name, Status, MacAddress, LinkSpeed
# 运行系统网络诊断
msdt.exe /id NetworkDiagnosticsNetworkAdapter
# 查看网络连接状态
Get-NetConnectionProfile

用户账户与权限故障

1、修复当前用户配置文件

# 检查用户配置文件状态(1=正常,2=损坏)
Get-WmiObject -Class Win32_UserProfile | Select-Object LocalPath, Status
# 修复当前用户文件夹权限
icacls "$env:USERPROFILE" /grant "$env:USERNAME`:F" /T /C /Q
# 重置用户权限(需替换用户名)
icacls "C:\Users\用户名" /reset /T /C /Q

作用:解决用户登录后黑屏、桌面文件丢失、权限错误(如 “无法访问”)。

2、启用内置管理员账户(紧急修复用)

# 启用内置管理员账户
net user administrator /active:yes
# 重置用户密码(需管理员权限)
net user 用户名 新密码
# 修复用户组权限,添加管理员权限
Add-LocalGroupMember -Group "Administrators" -Member 用户名

3、系统安全策略修复

# 重置本地安全策略
secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose
# 修复UAC(用户账户控制)设置
Set-ItemProperty "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "EnableLUA" -Value 1 -Type DWord

本文链接:https://dnpu.com/710.html

电脑维修命令CMD

网友评论

  • 点击刷新验证码