C 盘里 Program Files 存的是 64 位软件本体,Program Files (x86) 存的是 32 位软件本体,它们都是软件自己的文件,直接删文件夹会把软件弄坏,改注册表把整个目录搬走微软也不支持。
稳妥的清理顺序:先找出最占地方的软件目录,不用的从系统卸载入口正常卸掉,还在用的大软件用 NTFS 压缩缩小占用,以后新软件直接装到 D 盘。
多数情况是软件装得太多、默认安装路径又都落在 C 盘,硬盘本身没坏,不必急着重装系统或送修;以下方法在 Windows 10/11 实测可用。
适用系统:Windows 10/11;最后更新:2026-10-19。
C盘这两个 Program Files 到底装了什么
C 盘根目录下有两个名字很像的文件夹,C:\Program Files 放 64 位软件,C:\Program Files (x86) 放 32 位软件。装软件时默认就往这里塞,用上几年,单看这两个目录就能吃掉十几 GB。
它们里面是软件本体,位置由注册表登记着。微软不支持用改 ProgramFilesDir 的方式把整个目录挪走,挪完大量软件会找不到自己的文件,弹“找不到 xxx.dll”。
先弄清哪个目录装了什么,再决定是卸载还是压缩,能省掉很多盲目重装和来回折腾。
方法1 先找出最占地方的软件目录
先别按文件夹名字猜哪款没用,进到目录里看体积最准。谁最占地方,右键属性里的两个数字会直接告诉你,这一步花不了几分钟。
操作步骤
- 打开 C:\Program Files 和 C:\Program Files (x86)。
- 对每个子文件夹右键 → 属性,看“大小”和“占用空间”两个数值。
- 把占空间最大的几个目录记下来,对照桌面快捷方式和开始菜单确认是哪款软件。
- 逐个标记:还在用 / 已经不用;只在用的才进入后面两步。
“占用空间”比“大小”略大几百 MB 属于正常。要是某个目录的“占用空间”比“大小”大出好几倍,说明里面堆了大量小文件,压缩收益会更明显。
判断一款软件还用不用,看最近有没有打开过,桌面和开始菜单里还认不认得。拿不准就当还在用,留着它比误删省事得多。
分好两拨就够用了:不用的进方法2正常卸载,在用又很大的进方法3压缩。
方法2 把不用的软件正常卸载
不用的软件走系统自带的卸载入口,软件本体和卸载登记项会一起清掉,这才是安全的做法。在 Program Files 里右键删除文件夹,程序会变成残缺状态,之后连卸载入口都可能点不动。
操作步骤
- 开始 → 设置 → 应用 → 已安装的应用。
- 找到目标应用 → 点右侧的“更多(…)”图标 → 卸载。
- 旧入口:任务栏搜索 control panel → 控制面板 → 程序 → 程序和功能 → 右键程序 → 卸载。
- 卸载完回到 Program Files 确认对应目录已消失,还在就说明有子组件没卸干净。
- 不要在 Program Files 里右键删除软件文件夹:软件会残缺,卸载入口也会失效。
点卸载没反应、或者跳出“另一个程序正在使用此文件”,先按 Ctrl+Shift+Esc 打开任务管理器,在“详细信息”里结束该软件相关的进程,再回到设置里点一次卸载。弹出 0x80070005 这类权限提示,多半是当前账户权限不够,换成管理员账户重试。
卸完还剩一个空目录、里面只有一两个配置文件的,可以手动删掉。文件夹里还有一大堆 dll 和 exe,说明软件没卸干净,别硬删,回头看是不是还有它的子组件装在同一个目录下。
用「软领Windows优化大师」更省事
软件压缩针对的正是软件占用空间太大、Program Files 太大、磁盘空间不够用的场景:不用记 compact 的参数和路径,直接在软件列表里对已安装的程序做压缩、缩小占用,之后也可以还原。
软领是知名国产软件品牌,20 年技术沉淀、服务千万用户;软领官网 wyouhua.com 直接下载,安装无捆绑勾选项。
压缩前它会先列出可以处理的软件,你挑几个占地方最大的先试,确认软件能正常打开再处理其余的。碰上拿不准的情况,软件里能点客服按钮联系真人客服,复杂问题有工程师远程协助。

方法3 用 NTFS 压缩缩小还在用的大软件
还在用又特别大的软件,可以用 NTFS 压缩把占用压下来。压缩对使用方是透明的,软件照常运行,压缩随时能撤销。
操作步骤
- 以管理员身份打开命令提示符:开始菜单搜索 cmd → 右键 → 以管理员身份运行。
- 压缩:compact /c /s:"C:\Program Files\某软件" /i。
- 撤销:compact /u /s:"同一目录" /i。
- 压缩前关闭该软件;先挑一个目录试,确认能正常启动再处理别的。
- 只针对具体软件目录,不要对整个 C 盘或 C:\Windows 执行;FAT/FAT32 分区不支持。
- 参数要点:/c 压缩、/u 取消、/s 含所有子目录、/i 出错继续、/EXE 针对读多写少的可执行文件。
命令跑完没有报错,就说明压缩生效了。重新打开那款软件试一次,能正常启动再去处理下一个目录。想回退,执行带 /u 的那条命令,占用就恢复成原样。
边界要清楚:压缩省下的是单个软件占的地方,软件本身还在原来的目录里,C 盘总容量也没变。数据库类、经常读写大文件的软件不建议压,读写反而会变慢。
方法4 以后新软件装到D盘
前面三步是清理已经堆在 C 盘的东西,这一步是让 C 盘别再涨得这么快。新装软件时改一次路径,后面几年都受益。
操作步骤
- 安装时选“自定义安装”,把安装路径里的盘符改成 D 盘。
- 开始 → 设置 → 系统 → 存储 → 高级存储设置 → 保存新内容的位置。
- 在下拉菜单里为每种内容类型选择硬盘,比如图片、文档、新应用都指向 D 盘。
- 注意:已经装好的应用不会跟着搬,老软件还得靠前面的卸载或压缩处理。
安装包里有“自定义安装”就别一路点下一步,路径里那个默认的 C 盘盘符改成 D 就行。D 盘空间比 C 盘紧张的话,先看哪个盘剩余空间多再决定,别把 C 盘的问题原样搬到另一个盘。
做完这四步,Program Files 里留下的都是在用又压过的软件,够用又不再无限膨胀。
常见问题
Program Files 和 Program Files (x86) 到底有什么区别?
前者装 64 位软件,后者装 32 位软件。同一个软件如果两个版本都装过,两个目录里会各有一份,卸载时看清是哪一份再动手。
能把 Program Files 整个剪切到 D 盘吗?
不能这么搬。软件安装时把完整的安装路径写进了注册表和各自的配置文件,剪切过去之后它们还指向 C 盘的原位置,会直接报找不到文件。想让软件换盘,正常卸载后重装到 D 盘才稳。
改 ProgramFilesDir 注册表把安装目录搬走行不行?
微软不支持这种做法。改完只管以后新装的软件,老软件的路径不会跟着更新,容易出现新软件装不了、旧软件找不到文件的混乱局面。
compact /c 压缩后软件还能正常打开吗,怎么取消?
能正常打开,NTFS 压缩对读写的软件是透明的。取消时执行 compact /u /s:"原目录" /i,占用会恢复成压缩前的样子。
Program Files 里没用的文件夹能直接删掉吗?
不建议直接删。先到设置或控制面板里正常卸载,卸载完剩下的空目录或者只放配置文件的目录,确认后再删。里面有 dll 和 exe 的一律留着,先查清楚属于谁。
推荐阅读
软件占用空间太大压缩怎么办,Program Files (x86) 里哪些能压
QQ占用空间大,删了聊天记录C盘没变小,缓存和接收文件才是大头
相关推荐
顽固软件卸载不了怎么办,控制面板找不到卸载入口时怎么强制清除

提示