You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用Remove-AppxPackage无法清除WindowsApps文件夹内应用残留文件的求助

Remove-AppxPackage无法清除WindowsApps文件夹内应用残留文件的求助

你遇到的这种情况在处理UWP应用卸载时确实挺棘手——明明通过Get-AppxPackage –AllUsers | Select Name, PackageFullName已经查不到Hidden City和Candy Crush Saga的踪迹了,但WindowsApps文件夹里的残留文件就是删不掉,还占了20GB的空间,对于Kiosk这种对空间和稳定性要求高的设备来说,这个问题必须得解决。

先帮你梳理下目前你已经尝试过的操作:

  • 用常规的Get-AppxPackage查询确认应用已不在列表中
  • 尝试以系统权限执行卸载命令:psexec -s powershell -c "get-appxpackage -allusers *828B5831.HiddenCityMysteryofShadows* | remove-appxpackage",但没有效果
  • 直接删除WindowsApps里的残留文件失败

下面给你几个针对性的解决思路,你可以一步步尝试:

1. 先获取WindowsApps文件夹的所有权与权限

WindowsApps是系统高度保护的目录,默认普通用户甚至管理员都没有直接删除文件的权限,所以第一步得拿到权限:

  • 右键选中残留的应用文件夹 → 「属性」→ 「安全」选项卡 → 点击「高级」
  • 在高级安全设置窗口,点击「更改」(所有者那一栏),输入你的管理员用户名,点击「检查名称」确认后点击「确定」
  • 回到高级窗口,勾选「替换子容器和对象的所有者」,点击「应用」并确认
  • 再回到「安全」选项卡,点击「编辑」→ 「添加」,输入你的用户名并赋予「完全控制」权限,应用设置后再尝试删除文件

2. 用DISM工具清理系统冗余组件

有时候这些残留文件会被系统标记为组件缓存,用DISM工具可以强制清理:

  • 管理员身份打开PowerShell,依次执行以下命令:
    DISM /Online /Cleanup-Image /StartComponentCleanup
    DISM /Online /Cleanup-Image /StartComponentCleanup /ResetBase
    
    注意第二个命令会清除所有已安装的更新备份,虽然能释放更多空间,但之后无法卸载已安装的系统更新,你可以根据需求选择是否执行。执行完成后再去WindowsApps文件夹检查残留是否被清理。

3. 针对Kiosk设备的预装应用清理

Kiosk设备可能预装了这些应用,即使卸载了用户级的应用,预装的包还在系统里:

  • 管理员身份打开PowerShell,执行命令查看是否有预装的应用包:
    Get-AppxProvisionedPackage -Online | Where-Object { $_.DisplayName -match "Hidden City|Candy Crush" }
    
  • 如果查到对应的包信息,复制PackageName字段,执行卸载命令:
    Remove-AppxProvisionedPackage -Online -PackageName "你查到的PackageFullName"
    
    完成后再尝试删除残留文件

4. 最后的兜底方案:安全模式下删除

如果以上方法都不行,你可以尝试进入安全模式再删除残留文件:

  • 重启设备,在开机过程中按住Shift键选择「疑难解答」→ 「高级选项」→ 「启动设置」→ 选择「安全模式」启动
  • 进入安全模式后,重复步骤1获取权限,然后尝试删除残留文件,安全模式下系统对文件的锁会更少,成功率更高

备注:内容来源于stack exchange,提问作者Jaques

火山引擎 最新活动