Windows修复Microsoft Store无法正常打开问题
适用场景:
- 打开 Microsoft Store(微软商店) 时只显示“灰色骨架屏 / 白屏”
- 过一会儿提示类似 “初始化失败 / failed to initialize / something went wrong”
- 在“应用设置 → 修复 / 重置”之后能好一阵子,过一段时间又再次出问题
本文提供一套 可直接使用的 .bat 修复脚本,并解释每一步在做什么,方便你排查是否还有环境层面的根因没有解决。
一、适用环境与前置说明
- 系统:Windows 11 专业版 64 位(其他 Win11 版本大多也可参考)
- 权限要求:必须以 管理员身份 运行脚本
- 网络要求:
- 尽量使用稳定、未被限速或拦截的网络
- 如果你使用了 全局代理 / 系统代理 / 科学上网软件(如 Clash、NekoRay 等),建议在执行脚本和测试商店前 先关闭系统代理,这类工具经常会导致微软商店初始化异常
⚠️ 风险提示(相对安全):
- 脚本不会删除你的个人文件
- 涉及的操作主要是:
- 修复系统组件(DISM、SFC)
- 检查并启动与商店相关的关键服务
- 清空 Microsoft Store 缓存
- 重新注册 Microsoft Store 应用包
- 不包含激进的“系统精简”操作,一般不会对正常应用造成破坏
二、使用步骤总览
- 使用记事本创建
.bat文件(保存为 UTF-8 编码,防止中文乱码) - 将下文提供的 完整脚本 原样复制进
.bat - 右键该文件 → 以管理员身份运行
- 等脚本所有步骤执行完毕后,重启电脑
- 重启后测试 Microsoft Store 是否恢复正常
- 若问题仍不稳定,再根据文末“额外排查项”继续检查网络、代理、账户等因素
三、完整批处理脚本(中文简体,无需自行改动)
建议文件名示例:
Fix_Microsoft_Store_Win11.bat
保存时在记事本中选择:
- 文件 → 另存为
- 编码:选择 UTF-8(为避免乱码,脚本内已主动切换到 UTF-8 代码页)
@echo off
title 修复 Microsoft Store (Windows 11)
:: 切换控制台为 UTF-8,避免中文输出乱码
chcp 65001 >nul
echo =====================================================
echo Windows 11 Microsoft Store 修复脚本
echo 请确保以「管理员身份」运行本脚本
echo =====================================================
echo.
:: 检查是否为管理员权限
net session >nul 2>&1
if %errorlevel% NEQ 0 (
echo [错误] 当前不是管理员权限。
echo 请右键本文件,选择「以管理员身份运行」后重新执行。
echo.
pause
exit /b 1
)
echo [1/5] 使用 DISM 修复系统组件映像,过程可能需要一些时间...
DISM /Online /Cleanup-Image /RestoreHealth
echo.
echo DISM 操作已完成(如有报错请记录错误代码以便后续排查)。
echo.
echo [2/5] 使用 SFC 扫描并修复系统文件,耗时取决于硬盘和系统状况...
sfc /scannow
echo.
echo SFC 扫描已完成(如提示发现损坏但无法修复,请考虑就地升级修复安装)。
echo.
echo [3/5] 检查并启用与 Microsoft Store 相关的关键服务...
echo - BITS(后台智能传输服务)
echo - wuauserv(Windows Update)
echo - cryptsvc(加密服务)
echo - AppXSvc(AppX 部署服务)
echo - ClipSvc(客户端许可证服务)
echo.
for %%S in (bits wuauserv cryptsvc AppXSvc ClipSvc) do (
sc config %%S start= demand >nul 2>&1
net start %%S >nul 2>&1
)
echo 关键服务检查与启动操作已完成。
echo.
echo [4/5] 清空 Microsoft Store 缓存 (wsreset)...
echo 这一步会关闭当前已打开的 Microsoft Store,并清理本地缓存。
wsreset.exe
echo 如果此时自动打开了 Microsoft Store,请先将其关闭,然后继续。
echo.
echo [5/5] 重新注册 Microsoft Store 应用包...
echo 这一步将重新注册 Microsoft.WindowsStore 的 AppX 包信息。
echo.
powershell -NoProfile -ExecutionPolicy Bypass ^
-Command "$pkg = Get-AppxPackage -AllUsers Microsoft.WindowsStore; if ($pkg) { Add-AppxPackage -DisableDevelopmentMode -Register ($pkg.InstallLocation + '\AppXManifest.xml'); Write-Host 'Microsoft Store 重新注册完成。' } else { Write-Host '未找到 Microsoft.WindowsStore 应用包,请检查系统是否被精简或禁用 UWP。'; exit 1 }"
echo.
echo ==============================================
echo 所有步骤执行完毕!
echo 建议现在重启电脑,然后重新测试 Microsoft Store。
echo ==============================================
echo.
pause
四、脚本各步骤详细说明
1. 切换编码与管理员检查
chcp 65001 >nul
net session >nul 2>&1
if %errorlevel% NEQ 0 ( ... )
chcp 65001:将当前控制台代码页切换为 UTF-8,避免中文提示出现乱码。net session:用于判断当前是否有足够权限访问网络会话,普通用户执行会报错,据此可判断是否为管理员。
如果不是管理员,脚本会直接提示并退出,防止出现权限不足导致的“执行失败但你没看出来”。
2. DISM 修复系统组件映像
DISM /Online /Cleanup-Image /RestoreHealth
-
作用:
- 检查并修复系统组件存储(WinSxS),是修复 UWP 平台、系统服务损坏 的关键一步。
-
这一步可能会比较耗时,期间请不要强行关闭窗口。
-
如果报错(如找不到源、错误代码等),说明系统组件损坏较严重,后续可能需要 就地升级修复安装 Windows 来彻底恢复。
3. SFC 扫描与修复系统文件
sfc /scannow
-
作用:
- 对所有受保护的系统文件进行校验,如果发现损坏就从组件存储中还原。
-
若提示 “发现损坏文件并成功修复”:说明刚才确实有系统文件损坏。
-
若提示 “发现损坏文件但无法修复其中部分”:可能需要在安全模式下再次运行,或考虑就地升级修复安装。
4. 检查并启用关键服务
for %%S in (bits wuauserv cryptsvc AppXSvc ClipSvc) do (
sc config %%S start= demand >nul 2>&1
net start %%S >nul 2>&1
)
涉及的服务:
BITS:后台智能传输服务,微软商店下载/更新经常依赖它wuauserv:Windows Update 服务,部分 UWP 和授权流程会用到cryptsvc:加密服务,涉及证书、签名验证等AppXSvc:AppX 部署服务,负责 UWP 应用的安装/更新/注册ClipSvc:客户端许可证服务,涉及 UWP 授权与许可
很多“优化软件 / 精简脚本”会直接把这些服务改成“禁用”,导致微软商店各种诡异报错。
这里统一把它们的启动类型设置为 按需启动(demand),并尝试立即启动一次。
5. 清空 Microsoft Store 缓存
wsreset.exe
-
等价于你在“运行”中输入
wsreset并执行:- 关闭当前商店窗口
- 清除本地缓存
- 再尝试重新打开商店(脚本中提示你可以先关闭)
-
这是微软官方文档推荐的修复步骤之一,用于处理商店缓存损坏 / 配置异常。
6. 重新注册 Microsoft Store 应用包
powershell -NoProfile -ExecutionPolicy Bypass ^
-Command "$pkg = Get-AppxPackage -AllUsers Microsoft.WindowsStore; if ($pkg) { Add-AppxPackage -DisableDevelopmentMode -Register ($pkg.InstallLocation + '\AppXManifest.xml'); ... }"
-
这一步做的事情相当于手动在 PowerShell 中执行:
Get-AppxPackage -AllUsers Microsoft.WindowsStore:找到商店的应用包信息Add-AppxPackage -DisableDevelopmentMode -Register "...\AppXManifest.xml":重新注册这个 UWP 应用
-
如果提示 “未找到 Microsoft.WindowsStore 应用包”,说明系统很可能被精简/篡改过,需要:
- 使用官方 ISO 做就地升级修复安装;
- 或考虑重装系统。
五、防止中文乱码的小技巧
-
保存编码选 UTF-8
- 在记事本中另存为
.bat时,编码选项中选择:UTF-8。
- 在记事本中另存为
-
脚本最前面加上
chcp 65001 >nul让控制台使用 UTF-8 代码页显示中文。
-
运行批处理时,建议使用支持中文显示的字体(例如“新宋体”、“微软雅黑”等)。
六、如果脚本执行后仍然出问题,可以继续排查这些点
1. 检查代理 / 科学上网工具
很多“白屏 + 初始化失败”其实是 网络被代理/拦截 导致商店连不上服务器:
-
如果你在用:
- Clash / CFW
- NekoRay / V2Ray 客户端
- 其他自动勾选“系统代理”的工具
-
建议:
- 先在这些软件里 关闭系统代理 / 退出程序
- 打开 设置 → 网络和 Internet → 代理,确认没有残留的 HTTP / SOCKS 代理
- 重启电脑后再试商店
如果关闭代理后商店恢复正常,那么问题不在系统,而在代理规则或程序本身。
2. 检查系统更新时间
- 打开 设置 → Windows 更新 → 检查更新
- 安装所有重要的系统更新和 .NET 更新,有时微软会通过更新修复某些 UWP / 商店相关 Bug
3. 测试“新用户”是否正常
有时问题只发生在当前用户配置文件中:
- 打开 设置 → 帐户 → 其他用户
- 新建一个本地账户(设置为管理员)
- 切换到新账户登录
- 在新账户下打开 Microsoft Store 测试
-
如果 新账户正常,旧账户一直异常:
- 说明是旧账户的 UWP 配置整体损坏,理论上可以考虑把文件迁移到新账户,或做更深入的注册表/配置清理(不推荐普通用户手工改)。
4. 考虑“就地升级修复安装” Windows 11
当 DISM/SFC 仍然无法完全修复系统,或者 UWP 组件已经严重损坏时,可以使用 官方 ISO 进行就地升级修复:
-
从微软官网下载对应版本的 Windows 11 ISO
-
在系统内挂载 ISO,运行
setup.exe -
选择:
- 保留个人文件和应用
-
按向导完成安装,相当于“就地重装系统组件”,但不删除你的软件和数据
这一招对于“系统被各种精简工具/优化器折腾过”的情况非常有效。
七、结语
- 复制脚本 → 保存为
Fix_Microsoft_Store_Win11.bat(编码 UTF-8) - 右键 → 以管理员身份运行 → 按提示等待所有步骤完成
- 重启电脑 → 测试 Microsoft Store