站长资源操作系统

Windows下所有的软件默认安装路径都在C盘的原理及修改方法

整理:jimmy2024/11/19浏览2
简介为什么Windows下所有的软件默认安装路径都在C盘? 这是个让初级用户纠结的问题,是啊,为什么所有的软件默认安装路径都在C盘?为什么不默认成D、E、F……盘? 这个不是软件开发人员决定的,这个是微软决定的。 我们知道,Windows操作系统默认在系统盘在C盘,这也决定了
为什么Windows下所有的软件默认安装路径都在C盘?

这是个让初级用户纠结的问题,是啊,为什么所有的软件默认安装路径都在C盘?为什么不默认成D、E、F……盘?

这个不是软件开发人员决定的,这个是微软决定的。

我们知道,Windows操作系统默认在系统盘在C盘,这也决定了软件的安装默认就只能在C盘。可能你现在不明白,为什么会这样。

那么我就给你讲讲。在早期的Windows操作系统中,对硬件的需求是很低的,因为那个时候压根就没有像现在动不动就几十G或者上百G的磁盘。就拿WIN98来说,那个时候移动储存的主流还是用软盘,不像现在一个U盘都可以几G了。

那个时候的电脑默认只有一个盘符,就是C盘。当然也可以根据需要多设置一个盘符。

即使到了现在,储存这么发达的时候,微软还是把软件的默认程序位置放在C:\Program Files\ 目录下面。

这又是为什么呢?

说来还是跟这个操作系统有关,因为系统盘还是在C盘。现在还是有人电脑只设置一个盘的,就是C盘。不过这样的人比较少了。所以为了确保软件能够正常安装,也只能放在C盘下面。你也可以这么想,我的电脑只有C盘,我要安装个软件它非得要安装到D盘或者F盘,那么怎么装?

附:更改软件默认安装路径的方法

默认安装路径C:\Program Files的更改~!!

一般安装软件默认都是安装这个,要不想安装在这个目录在安装的时候就要手动去必动路径。。

你要是懒得改下面有几种一劳永逸的方法。。

方法一:运行输入regedit打开注册表编辑器,展开注册表“HKEY_LOCAL_MACHINE\Software\Microsoft\ Windows\ CurrentVersion”分支,在窗口的右侧区域找到名为“ProgramFilesDir”和“ProgramFilesPath”的键值,将其原键值“C:\Program Files”改为“D:\Program Files”,关闭注册表。

方法二:用DOS命令即可实现。

① 点击“开始”→“运行”。

② 输入“cmd”,回车。

提示符后输入“set ProgramFiles=D:\Program Files”,回车即可。

方法三:下载默认路径修改器

改了后还是会有一些在安装文件在:CommonFilesDir 文件夹中。。如这个文件夹里的软件文件你也想转动可以同样改下路径如改默认的:C:\Program Files\Common Files 为 D:\\Program Files\\Common Files。

又附:把 Program Files 目录移动到非系统盘的方法

本文只讨论系统正常安装后的移动,另外一种方案是使用"unattend 无人值守"安装系统,可以自行搜索。

本文方案适用的系统为:Windows Server 2008,Vista、Windows 7应该(可能)也有效。之前的系统也类似,可以参考《[系统优化] 用 Junction 自定义“顽固”系统文件夹的路径》。

第零步,确定系统是刚刚安装好的,这样比较不会出现意外,也更有效优化;确定是用 Administrator 登录。

第一步,复制 Program Files 目录,但不能直接用资源管理器复制,我们需要保留此目录的所有权限设置,假设要从 C 盘移动到 D 盘:

xcopy "C:\Program Files" "D:\Program Files\" /E /H /K /X /Y

第二步,修改注册表:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion]

"ProgramFilesDir"="D:\\Program Files"

"CommonFilesDir"="D:\\Program Files\\Common Files"

第三步,重启,注意不是注销,因为 Program Files 里有很多文件是被系统服务使用的,注销并不能重启服务。

第四步,关闭 iphlpsvc 服务,因为它使用到了 "C:\Program Files\Internet Explorer\sqmapi.dll":

net stop iphlpsvc

第五步,删除 "C:\Program Files" 目录,要先取得所有权,添加改写权限后才可以删除。

第六步,创建 Junction 文件夹映射,把 "C:\Program Files" 指向 "D:\Program Files",这是为了防止一些硬编码的 SB 程序不由分说地往 "C:\Program Files" 里写东西。

mklink /J "C:\Program Files" "D:\Program Files"

大功告成。