
1. C盘红线是怎么被 Microsoft Store 一步步吃掉的如果你用过一段时间的 Windows 10大概率遇到过这个场景某天打开此电脑C盘那条进度条已经变成了刺眼的红色剩余空间只剩个位数 GB。你翻遍所有文件夹也找不出罪魁祸首最后用磁盘分析工具一扫发现C:\Program Files\WindowsApps悄悄占了几十 GB。这就是 Microsoft Store 应用默认路径设在系统盘带来的直接后果也是怎么更改 windows10 的 Microsoft Store 默认路径到非系统盘这个问题被反复搜索的原因。先说清楚一件事这里讲的默认路径不是简单地把某个文件夹拖到 D 盘而是让 Windows 的应用包部署机制Appx / MSIX 部署子系统把新的 Store 应用安装到你指定的另一个磁盘卷上。它涉及的是系统级的包卷注册不是普通的文件搬家。很多人第一步就想歪了直接去C:\Program Files\WindowsApps里剪切粘贴结果要么提示你需要 TrustedInstaller 提供的权限才能对此文件夹进行更改要么强行改完权限之后Store 里的应用全部打不开、开始菜单图标变白板。所以这篇内容的核心是把正确的改法和为什么只能这么改讲透。这篇文章适合三类人看C盘容量本来就小128G、256G 固态的笔记本用户经常在 Store 里下载大型游戏、设计工具、开发工具的重度玩家以及需要批量装机、希望统一规划磁盘布局的运维人员。不管你之前有没有折腾过注册表只要按下面的顺序走基本可以避免踩到最深的几个坑。1.1 Store应用到底把文件散落在了哪些位置要改路径先得知道东西被放在了哪。很多人以为 Store 应用就是一个文件夹实际上一个应用装完它的文件至少分布在三个地方而这三处的可搬移性完全不同。第一处是程序本体位置在C:\Program Files\WindowsApps。这个文件夹默认是隐藏的而且在资源管理器的查看里勾选了隐藏的项目也未必看得见因为它的权限归TrustedInstaller所有普通管理员账户连读取都费劲。这里放的是应用的可执行文件、资源包、DLL 依赖。这一部分是可以整体迁移到别的盘的改默认安装位置改的就是它。第二处是用户数据和配置位置在C:\Users\你的用户名\AppData\Local\Packages\应用包名。这里面放的是你的登录状态、缓存、存档、设置。注意这部分不会跟着应用一起搬到 D 盘。这是很多人改完路径之后最困惑的地方——明明已经把默认位置改成 D 盘了C盘该涨还是涨。原因就在这里。第三处是共享框架包比如.NET Native Framework、VCLibs、Microsoft.UI.Xaml这些。它们本身也是 UWP 包但你在应用和功能列表里看不到它们因为它们是给其他应用当依赖用的。这些框架包默认也待在C:\Program Files\WindowsApps里而且通常不允许移动因为一旦移动所有依赖它们的应用都可能在加载时找不到引用。你可以用下面这条命令大致看清楚当前系统里注册了哪些包卷、以及每个卷用了多少空间Get-AppxVolume | Format-List *输出的信息里会包含PackageStorePath也就是该卷上应用存放的目录正常情况下是盘符:\WindowsApps、IsSystemVolume是否系统卷、IsOffline是否离线这几个关键字段。我在第一次跑这条命令的时候才意识到原来 Windows 早就把应用装在哪个卷当成一个正式的、可以注册和注销的概念在管理了而不是像传统桌面软件那样随便装在哪都行。1.2 哪些能搬、哪些搬不动先有个预期在动手之前先把预期建立起来否则改完之后发现 C 盘没瘦多少会非常挫败。下面这张表是我在实际机器上整理出来的对照供你参考内容类型默认位置能否随默认路径改到非系统盘说明应用主程序C:\Program Files\WindowsApps能改默认卷后新装应用直接落在新盘应用用户数据C:\Users\...\AppData\Local\Packages不能仍占 C 盘约占应用体积的 10%~40%共享框架包C:\Program Files\WindowsApps一般不移动系统托管移动易出故障Store 自身缓存C:\Windows\SoftwareDistribution等不能建议用存储感知定期清理系统更新缓存C:\Windows\SoftwareDistribution\Download不能动它属于另一个话题看清楚这张表你就能明白一件事改默认路径能解决大头但解决不了全部。一个 20GB 的游戏主程序搬走之后C盘大概还能省下 15~18GB剩下两三 GB 的用户数据仍然留在原地。这个比例已经足够救命了但别指望 C 盘能回到刚装系统时的状态。顺带提一句如果你看到热词里有人问更改 wsl2 的默认路径那是另一套机制——WSL 的虚拟磁盘ext4.vhdx是通过wsl --export/--import搬家的和 Store 的包卷完全没有关系别把两者混在一起操作。2. 改默认路径前的三个硬性前置条件我见过太多人卡在同一个地方打开设置找到了新的应用将保存到这个下拉框点开一看里面除了 C 盘什么都没有。然后就开始怀疑自己的 Windows 是不是坏了。其实不是系统坏了是目标磁盘不满足条件。这一节把条件讲清楚可以帮你省掉大量无意义的排查。2.1 目标分区必须是 NTFS 的固定磁盘这是最硬的一条。Windows 的包部署子系统对目标卷有两个要求缺一不可。第一个要求是文件系统必须是 NTFS。FAT32 和 exFAT 一律不接受。原因很实在FAT32 单个文件最大只有 4GB而现在 Store 里随便一个大作的安装包都远超这个数字就算强行让你选装到一半也会失败exFAT 虽然单文件大小没限制但它缺少 NTFS 的权限模型、硬链接和文件流支持而 Appx 包的部署过程恰恰依赖这些特性来做去重和校验。所以哪怕你的移动硬盘是空的一大片格式不对就是不给选。第二个要求是磁盘类型必须是固定磁盘不能是可移动。这一条很坑因为很多人的硬盘在系统看来就是可移动的。典型情况有几种硬盘装在 USB 硬盘盒里用用 SATA 转 USB 转接线接的还有某些 NVMe 硬盘通过 USB 转接盒接入。这些情况下Windows 会把磁盘的Removable属性标记为真存储设置里就看不到它。如果你确定硬盘是接在主板 SATA 或 M.2 插槽上的但还是不显示可以用管理员权限的 PowerShell 查一下磁盘属性Get-Disk | Select-Object Number, FriendlyName, BusType, PartitionStyle Get-Partition | Select-Object DiskNumber, DriveLetter, Size, Type重点看BusType这一列。如果是SATA、NVMe、RAID一般没问题如果显示USB那就基本确定是接口导致的识别问题把硬盘直接接到主板上再试。2.2 盘符与空间规划别等到装一半才发现不够确定了磁盘类型没问题接下来是规划。我的建议是单独划一个分区专门给应用而不是跟文档、下载、素材混在一个盘里。理由有三个一是便于日后统计空间占用出问题时可以直接对着这个盘判断二是如果哪天需要重装系统这个盘的数据结构清晰不容易误删三是应用目录WindowsApps是隐藏的、权限特殊的和普通文件混在一起管理起来很别扭。容量怎么估按你平时的使用习惯来。如果只是装些工具类应用微信、网易云音乐、Notion 这类50GB 就够如果会装大型游戏或者 Adobe 系列这类体积夸张的应用建议至少留 200GB 以上别卡着线划。我自己的习惯是给应用盘留出总容量的三分之一剩下的给素材和备份。盘符方面没什么讲究D 盘、E 盘都可以只要不是 C 就行。但有一点要注意改完之后尽量不要再去改这个分区的盘符。因为包卷注册信息里记录的是具体的路径盘符一变注册信息就对不上了应用会集体失效。真要改盘符先把默认位置切回 C 盘把应用移回去改完盘符再重新设置一遍。2.3 先把已经装在 C 盘的应用处理掉再改默认路径很多人上来就改默认路径改完发现新装的确实到 D 盘了但之前装在 C 盘的一堆应用纹丝不动C 盘还是红的。顺序错了。正确顺序应该是先改默认路径 → 再把已有应用逐个移动过去 → 最后清理缓存。反过来的话你在移动已有应用的过程中如果触发了系统更新或者新应用安装很容易出现路径混乱。而且移动已有应用本身是个耗时的活儿一部 20GB 的游戏移动要十几分钟放在后面慢慢做不影响新装的落位。提示移动应用期间尽量不要同时做别的大批量磁盘操作尤其是同时往同一个目标盘复制大文件。机械硬盘上并发写入会显著拖慢速度也更容易在中途出错。3. 用设置改默认安装位置图形界面的完整走法如果你只是偶尔用 Store图形界面这条路就完全够了不需要碰命令行。我把完整的点击路径和每一步背后的动作都拆开讲省得你点了之后心里没底。3.1 存储设置里的那一项藏在哪打开设置进入系统左侧找到存储。往下滚你会看到一个叫更多存储设置的分组里面有一行更改新内容的保存位置。点进去页面顶部是一排下拉菜单分别对应新的应用将保存到、新的文档将保存到、新的音乐将保存到、新的照片和视频将保存到、新的电影和电视节目将保存到。这里最容易搞混的是第一项和后面几项的区别。只有新的应用将保存到这一项跟 Microsoft Store 相关改它会触发包卷的注册动作。后面那几项改的是文档 / 音乐 / 图片 / 视频这四个用户库的默认保存位置改完之后你另存文件时默认跳转的目录会变但它跟 Store 应用装在哪一毛钱关系都没有。我见过有人把这几项全改成 D 盘然后回来问我为什么 Store 应用还是装 C 盘——就是因为改错了行。选好目标盘符之后点应用系统会静默地做几件事在目标盘根目录创建一个隐藏的WindowsApps文件夹把这个卷注册为包卷把默认包卷指向它。整个过程没有进度条也没有提示点完就是点完了。你可以立刻装个小应用验证一下。3.2 下拉框里只显示 C 盘逐项排查如果下拉框里只有 C 盘按下面的顺序排查基本能覆盖所有情况。第一步回到上一节讲的确认磁盘是 NTFS 且被识别为固定磁盘。这一步排除掉大部分问题。第二步确认磁盘不是处于脱机状态。有些硬盘在磁盘管理里显示为脱机需要右键联机才能用。联机之后回到设置里刷新一下。第三步确认这个分区是主分区或者简单的单分区卷而不是某些特殊类型的动态卷。存储池Storage Spaces创建的卷在部分 Windows 10 版本上不会出现在这个下拉列表里。第四步检查一下这个盘是不是被其他策略锁定了。企业环境里管理员可能通过组策略限制应用的安装位置这种情况下普通用户改不了需要联系管理员。第五步如果以上都排除了还是不显示重启一次资源管理器再重启一次设置窗口。这个听起来很废话但确实遇到过因为存储服务StorSvc状态卡住导致列表不刷新的情况。重启大法在这里是有实际作用的。3.3 改完之后系统实际做了什么想真正理解这个功能最好看一眼它背后的状态。以管理员身份打开 PowerShell跑Get-AppxVolume Get-AppxDefaultVolumeGet-AppxVolume会列出当前所有已注册的包卷每个卷会标注IsSystemVolume和IsOffline你新加入的 D 盘应该会以D:\WindowsApps的形式出现在列表里IsSystemVolume为 False。Get-AppxDefaultVolume则会告诉你当前默认卷是哪个改成功后它应该指向你选的那个卷。注意这两条命令需要管理员权限普通窗口跑会提示访问被拒绝但不会给出明确的原因提示很容易误以为命令写错了。看到这里你应该明白了图形界面的那个下拉框本质上就是在调用底层的包卷管理接口。理解这一点之后图形界面失灵的时候你就知道该往哪个方向救。4. 图形界面失灵时用 PowerShell 直接操作包卷有些情况下图形界面确实不听话比如下拉框有 D 盘但选了之后点应用没反应或者改完重启又自己跳回 C 盘再或者你用的是被精简过的系统版本存储设置页面被裁掉了。这时候命令行就是唯一的出路。4.1 Get-AppxVolume 先看清现状排查的第一原则永远是先看现状不要凭感觉操作。管理员 PowerShell 里执行Get-AppxVolume | Select-Object PackageStorePath, IsSystemVolume, IsOffline, MediaType正常情况下你会看到C:\WindowsApps和D:\WindowsApps两条记录如果你已经从图形界面加过了。如果只有 C 盘一条说明图形界面那次操作根本没生效需要手工把 D 盘加进来。IsOffline这个字段值得留意。它的意思是这个卷当前不可用。如果你之前设过默认位置到某个盘后来把这个盘拔了或者格式化了这个包卷就会变成离线状态然后会引发一系列后续问题比如应用打不开、Store 报错。这个坑放到后面第 6 节详细说。4.2 Set-AppxDefaultVolume 切换默认安装目标如果 D 盘已经在卷列表里了只是默认卷还指着 C 盘那一条命令就能解决Set-AppxDefaultVolume -Volume D:\这条命令的作用和图形界面里改下拉框完全等价只是它更直接、也不依赖存储设置页面是否完整。执行完之后再用Get-AppxDefaultVolume确认一下输出。如果提示找不到这个命令说明你的系统上 Appx 模块被裁剪了。这种情况下先确认一下模块是否存在Get-Command -Module Appx | Select-Object NameSet-AppxDefaultVolume、Get-AppxVolume、Add-AppxVolume、Remove-AppxVolume这几个命令属于同一组如果整套都没有那就是系统精简导致的只能回归图形界面或者换个方式处理比如把常用应用换成传统桌面版软件。4.3 Add-AppxVolume 手工注册一个卷如果 D 盘压根没出现在卷列表里需要先把它注册成一个包卷Add-AppxVolume -Path D:\这条命令执行之后系统会在 D 盘根目录自动创建WindowsApps目录并设置好权限。执行完必须用Get-AppxVolume复查一次确认它已经出现再用Set-AppxDefaultVolume切过去。提示如果你的 D 盘根目录下已经手工建过一个叫WindowsApps的文件夹比如之前折腾过、手动创建过Add-AppxVolume可能会报错或者行为异常。正确的做法是先把手工建的那个删掉让系统自己创建。手工建的目录权限归属不对系统后面会出各种莫名其妙的权限问题。这里多说一句关于手工建WindowsApps并改权限这个流传很广的做法。网上一度有人教手动在 D 盘建WindowsApps把所有者改成当前用户、给完全控制权限然后把 C 盘的应用复制过去。这个做法我强烈不建议因为它把系统的权限模型和包卷注册机制绕过去了。短期内看起来能用但一旦系统更新、应用升级、或者执行任何一次包完整性校验就会集体翻车而且翻车之后非常难恢复往往只剩重装应用这一条路。4.4 补一个容易忽略的细节卷的在线与离线状态新增了包卷之后理论上它会自动挂载为在线状态。但如果你的 D 盘是从别的机器上拆过来的、或者曾经被同一个系统的其他安装注册过可能会带上残留的卷记录。这种情况下会出现两个D:\WindowsApps记录一个在线一个离线看着非常迷惑。清理办法是先确认哪个是离线的Get-AppxVolume | Where-Object { $_.IsOffline -eq $true }确认之后用Remove-AppxVolume把它摘掉注意只摘离线的那一条。搞不清状况的时候千万别批量处理包卷记录被误删之后应用会进入已安装但找不到的状态修复起来比重装还麻烦。5. 把已经装在 C 盘的 Store 应用搬到新盘改完默认路径只是让新装的应用落到新盘之前装的还都在 C 盘待着。这一步就是给它们搬家。这个过程看着简单实际上是整个流程里最容易出问题的环节。5.1 移动按钮的正确用法打开设置→应用→应用和功能列表里找到你要搬的应用。鼠标点一下它会展开几个按钮移动、卸载。如果移动按钮是可点的说明这个应用支持迁卷直接点然后在弹出的下拉里选目标盘确认之后开始搬。搬的过程会有进度提示一部 20GB 的游戏大概十几分钟取决于你的硬盘速度期间不要断电、不要拔盘、不要手动关掉设置窗口。搬完之后建议立刻验证一次从开始菜单启动这个应用看能不能正常打开、登录状态是否还在。绝大多数应用搬完是无感的但也有个别应用尤其是带本地缓存的音乐、视频类会丢掉一部分离线内容需要重新下载。这一点心里有数就行不算故障。5.2 哪些应用给不了移动按钮下面几类应用是搬不动的看到移动按钮是灰的就别硬试了。第一类是系统内置组件比如照片、计算器、相机这些。它们跟系统版本绑定得比较紧微软不允许把它们挪到其他卷。第二类是框架包和运行时前面提过的那些它们在应用列表里压根不显示自然也没得搬。第三类是部分第三方应用尤其是带自定义安装逻辑或者带驱动组件的那种。这类应用在设计的时候就没考虑迁卷的场景所以开发者没有声明支持按钮就是灰的。这种情况没有绕过的方法只能在改动之前想清楚要么接受它留在 C 盘要么先用Remove-AppxPackage卸掉改完默认位置之后再去 Store 重新装一次。卸载重装这个方案听着粗暴但往往是最省事的。尤其是那些刚装不久、没有本地数据要保留的应用直接卸了重装比什么都快。5.3 搬家搬到一半中断了怎么办这是最需要提前讲清楚的情况。如果你在移动过程中断电、强制关机、或者目标盘掉线了包可能处于一种中间状态——原卷上的文件被部分清理新卷上的文件不完整应用在开始菜单里还显示着但点开就闪退。遇到这种情况先不要慌按下面的顺序处理Get-AppxPackage -Name *应用关键词* | Select-Object Name, InstallLocation, Status重点看Status字段。正常应该是Ok如果是Staged、Modified、Tampered之类说明包确实处于异常状态。这种状态下没有特别好的无损修复手段最稳的做法是Get-AppxPackage -Name *应用关键词* | Remove-AppxPackage卸干净之后再去 Store 里重新装。因为你已经把默认位置改到 D 盘了重装会直接落到 D 盘等于顺手把搬家这件事也做完了。能修复的数据非常有限别在这上面耗时间重装是性价比最高的选择。注意执行Remove-AppxPackage之前如果这个应用里有你不想丢的本地数据先去AppData\Local\Packages下把对应的包目录整体备份一份。卸载会清掉用户数据这是不可逆的。6. 报错与异常排查顺序和错误码对照这一节是我自己踩过的坑汇总。Store 的报错信息普遍很敷衍同一个错误码背后的原因可能有好几种所以关键是按顺序排查而不是看到一个码就上网搜。6.1 排查的固定顺序不管报什么错我现在的习惯是固定走这四步九成问题能在前三步定位。第一步确认默认卷和实际可用的卷是否一致。跑Get-AppxVolume看有几个卷、有没有离线的、默认卷是不是指向了一个离线卷。如果默认卷指向离线卷那就是根因切回 C 盘或者修复那个卷就行。第二步确认目标盘的剩余空间是否足够。空间不足时Store 的报错信息可能跟空间毫无关系但实际问题就是它。这个坑我踩过一次排查了半小时权限问题才想起来看剩余空间。第三步确认应用是不是正在运行。正在运行的包是无法被移动或重新部署的。任务管理器里把所有相关进程结束掉再试。第四步清缓存。运行wsreset.exe不带参数直接运行它会重置 Store 的缓存和下载队列窗口会自动打开一次 Store 表示执行完成。如果 Store 本身行为异常还可以去设置→应用→Microsoft Store→高级选项→重置。6.2 常见错误码的对应关系下面这张表是我整理的实际遇到过的对应关系仅供定位方向不是绝对的一一对应错误码常见触发场景优先排查方向0x80070005提示访问被拒绝目标盘权限、包卷目录是否被手工改过权限0x80073D02安装或移动中途失败应用相关进程正在运行、依赖包被占用0x80073CF9部署阶段失败目标盘空间不足、文件系统异常、卷离线0x80070002找不到文件包卷路径失效、盘符被改过、外置盘未挂载Store 打开白屏界面加载不出来缓存异常先wsreset.exe再重置应用如果错误码是那种从没见过的长串数字别急着一项项去搜。先执行wsreset.exe重启一次系统再复现一次。很多一次性的部署失败会在重启后自愈这是最快的处理方式。6.3 一种容易被忽略的假故障还有一种情况值得单独说你把默认位置改到了 D 盘一切正常用了几天然后突然有一天所有应用都点不开了。这时候先看一眼 D 盘是不是还在。常见诱因有两种。一种是 D 盘装在可拆卸的硬件上某次没插好或者干脆没插。另一种是 D 盘所在的硬盘出现了硬件层面的识别问题比如 SATA 线松动、M.2 散热导致掉盘。这两种情况下包卷会变成离线状态依赖它的应用全部无法加载。判断方法很简单Get-AppxVolume里那个卷的IsOffline会变成 True。解决办法是先让磁盘恢复可用然后如果还是离线状态用Mount-AppxVolume把它重新挂上。如果磁盘本身就是没法修好的比如用了很久的旧机械盘那就要考虑把默认位置切回 C 盘把还能用的应用移回去再换盘。7. 几个必须知道的事后维护细节改完默认路径不等于一劳永逸日常使用中还有几件事需要留意。这些都是我在实际使用和给别人处理问题时总结出的经验网上很少有人说。7.1 D:\WindowsApps 这个目录别去碰这个目录在资源管理器里默认看不到但你用工具或者改设置能看到。看到了也别动。不要在里面手工新建文件不要改它的权限不要用第三方清理工具去优化它。原因前面讲过它的权限归TrustedInstaller包卷注册表里记录的是它的路径和一系列校验信息。你手动改任何一个字节都可能触发包完整性校验失败结果就是一整批应用启动不了。清理类工具尤其危险它们会把识别不了的目录当成垃圾有时候会把里面的资源文件判定为无用的大文件。真要清理空间正确做法是在设置里卸载应用或者用存储感知让系统自己判断哪些能清。别用第三方工具去扫应用目录。7.2 系统盘仍然需要留足够的空间把应用都搬到 D 盘之后很多人会顺手把 C 盘也压到极限觉得反正东西都在别的盘了。这是另一个坑。C 盘除了装系统本身还需要承担用户数据目录前面那张表里说了这部分不会搬、页面文件、休眠文件、系统还原点、Windows 更新缓存、临时文件、以及应用运行时的各种写入。这些加起来在一个装了不少应用的机器上几十 GB 是跑不掉的。我的经验是系统盘至少留出 60GB 以上的可用空间低于这个数就会开始出现各种诡异问题更新失败、应用启动慢、搜索索引异常、甚至蓝屏。应用搬家省出来的空间是用来救急的不是用来把 C 盘压到极限的。7.3 想恢复默认位置或者要重装系统时该怎么做最后一个场景有一天你想把默认位置改回 C 盘或者要把 D 盘格式化挪作他用。顺序非常重要先卸载或移回 D 盘上的所有应用再把默认位置切回 C 盘最后才动 D 盘。如果顺序反了直接格式化 D 盘那所有装在 D 盘的应用都会进入残缺状态包卷记录还在但文件没了Store 会反复报错清理起来相当麻烦。具体操作上先在设置里把默认位置改成 C 盘然后逐个把 D 盘上的应用用移动按钮搬回 C 盘或者直接卸载。全部处理完之后再执行Remove-AppxVolume -Volume D:\把 D 盘的包卷注册摘掉之后就可以放心地格式化这个分区了。摘除之前一定要用Get-AppxVolume确认上面已经没有应用了Get-AppxPackage也可以配合检查一遍。我个人在实际操作中的体会是整个过程里最容易出错的从来不是怎么点设置而是顺序和边界先改默认再搬家、先搬家再摘卷、先摘卷再格式化每一步的前后关系都不能乱。把这几条线理顺剩下的事情系统会自己处理好。另外改完之后第一次装应用建议挑一个体积小的试水几十兆的那种装完确认它确实落在了新盘上用Get-AppxPackage看InstallLocation再放心去装大体积的应用这个习惯帮我省过好几次返工。