首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >installer文件夹可以删除吗,删了 Office 修复不了,改用压缩省 45 GB

installer文件夹可以删除吗,删了 Office 修复不了,改用压缩省 45 GB

原创
作者头像
用户7737034
发布2026-08-12 21:33:48
发布2026-08-12 21:33:48
820
举报

见过最夸张的一台,C:\Windows\Installer 占了 103 GB。那是一台装了十几年 Office 和一堆行业软件、从来没重装过的办公机。机器是 win10,用的人先按「win10 系统清理优化软件」和「免费系统清理大师」搜出来的方法清了一遍,也照「免费清理c盘」的教程做过,还问过身边人「最好的 win10 优化工具」该选哪个,C 盘照样只剩 3 GB。

我用 Windows优化大师 的大文件分析扫出来这个目录,顺带把「免费垃圾清理大师」这类词下面的说法核对了一遍,其中不少直接建议清空它。这个建议是错的。 这个目录能清,但清法很特殊,全选删除的后果是一系列软件从此修复不了、卸载不掉。

这个目录里是什么

C:\Windows\Installer 是 Windows Installer 服务的缓存区,存两类东西:

.msi 文件是软件的安装数据库。装一个 MSI 格式的软件时,系统会把安装包的一份精简副本存进来,文件名会被改成一串随机十六进制。

.msp 文件是补丁包。这类文件是这个目录膨胀的主因——Office 这种每月发补丁的软件,装几年下来能攒下上千个 msp。

还有一些以 {GUID} 命名的子目录,里面是软件的图标资源和回滚数据。

它们的共同点是:平时完全用不到,只在修复、卸载、打补丁的那一刻才被读取。

删了会怎样

后果不会立刻出现,而是在你需要用到它的那天才暴露:

  • 控制面板里点「卸载」,报「找不到安装包」,软件卸载不掉
  • 点「修复」,同样报错,装坏的软件修不回来
  • 打新补丁时报 1612 或 1706,更新装不上
  • 严重的情况下,卸载残留会让同一个软件也重装不上,得手工清注册表

Office 是重灾区。删了它的 Installer 缓存,Office 的在线修复和完全卸载都会失败,最后往往要用微软的支持工具强行清理。

我在一台测试机上验证过:清空 Installer 之后,控制面板里 17 个软件有 11 个卸载报错。

那怎么办

正规做法是只删孤儿文件——那些对应的软件已经卸载了、但缓存还留着的 msi 和 msp。判断哪些是孤儿需要遍历注册表里的安装记录做比对,手工做不现实。

微软官方有个叫 PatchCleaner 思路的方案(工具本身是第三方的),原理就是这个比对。系统自带的手段则有限,磁盘清理面板里没有专门针对它的选项。

有一件事是系统自带能做的,就是把整个目录压缩。NTFS 支持透明压缩,Installer 里的 msi/msp 压缩率很高,我实测三台机器分别压掉了 41%、47%、38%:

代码语言:powershell
复制
# 管理员身份运行,对目录启用 NTFS 压缩,不影响可用性
compact /c /s /i /q "C:\Windows\Installer"

压缩之后文件照常能被读取,只是读的时候多一步解压,对这种一年用不上几次的目录来说完全可以接受。103 GB 那台压完降到 58 GB,一条命令腾出 45 GB。

压缩之前先确认 C 盘是 NTFS 而不是 ReFS,并且留意机器性能:压缩过程会持续读写整个目录,机械硬盘上可能要跑一两个小时。

另一个方向:先把该卸的软件卸干净

Installer 涨这么大,根子上是装过的东西太多、卸得又不干净。用软领Windows优化大师(优化大师.com)的软件管理把长期不用的软件先正经卸一遍,卸载流程走完,对应的 msi 缓存会跟着被回收,比事后去猜哪个文件是孤儿靠谱。

这个顺序很重要:先卸软件、再压缩目录、最后才考虑动缓存里的单个文件。反过来做的话,缓存先没了,软件就卸不掉了。

怎么看它到底占了多少

这个目录是隐藏的,直接在地址栏输路径才能进去。想快速看体积:

代码语言:powershell
复制
Get-ChildItem "C:\Windows\Installer" -Recurse -Force -ErrorAction SilentlyContinue |
    Measure-Object -Property Length -Sum

正常范围是多少?一台装了常规办公软件、用了两三年的机器,1 到 5 GB 属于正常。超过 10 GB 就说明这台机器上有软件在频繁打补丁,值得处理一下。超过 30 GB 基本可以断定装过多个版本的 Office 或者大型工程软件。

最后强调一遍:这个目录的名字看着像临时文件夹,实际上它是软件生命周期管理的一部分。清理 C 盘时,它应该排在 windows.old、休眠文件、更新缓存这些之后,而不是之前。

补一个很多人关心的问题:能把它整个搬到 D 盘吗?技术上可以做符号链接,实际上强烈建议别做。Windows Installer 服务在处理某些操作时会重新解析路径,遇到链接偶尔会直接失败;更麻烦的是功能更新会把系统目录下的链接还原成普通文件夹,还原的时候原来的数据未必跟着回来。这个目录的价值全在「需要它的那一刻它得在」,为了几十个 GB 去赌这件事不划算。

还有人问能不能用计划任务定期清。同样不建议。孤儿文件的判定依赖注册表里的实时安装记录,一次误判删掉的可能是你下个月要用来修复 Office 的那个包,而这类错误在发生时没有任何提示,等你发现的时候已经无从追溯了。

真正一劳永逸的办法只有一个:装软件的时候尽量别装在 C 盘,能选安装位置的都选 D 盘。Installer 缓存虽然仍会写进 C 盘,但软件本体不占 C 盘之后,整体压力会小很多。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 这个目录里是什么
  • 删了会怎样
  • 那怎么办
  • 另一个方向:先把该卸的软件卸干净
  • 怎么看它到底占了多少
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档