重组 C:\ 目录而不影响程序

重组 C:\ 目录而不影响程序

我想对我的电脑的文件层次结构做一些调整,但仅仅移动文件夹和文件就会禁用依赖某些文件位于某些硬编码地址的程序。

一个解决方案我希望有一个后台 Windows 服务,可以跟踪文件和文件夹的移动。然后,每当文件管理器以外的程序尝试访问移动的文件或文件夹时,该服务都会将其重定向到正确的位置。手动输入重定向也是必须的。

我该如何做这件事?

答案1

笔记:这仅适用于 Windows 7 或 Vista(不适用于 XP 或更早版本 - 该命令不存在)

如果你想将程序移动到不同的硬盘上,你可以使用 mklink 命令来目录符号链接

例如,假设我安装了 SteamC:\Program Files\Steam

但是,由于最近的 steam 促销活动,我的操作系统硬盘开始满了。我有另一个硬盘,空间充足,所以我关闭了 steam,将目录剪切到新硬盘(at X:\Steam),然后在命令提示符窗口中输入

cd "C:\Program Files"
mklink /D "Steam" "X:\Steam"

/D创建目录符号链接,而不是默认文件符号链接)

现在,如果您使用资源管理器浏览到 Program Files,将会有一个快捷方式文件夹(图标上有一个小箭头),如果您打开它,资源管理器窗口中的路径仍会显示C:\Program Files\Steam

因此,Windows 很高兴,因为 Steam 仍然在 Program Files 中,而我很高兴,因为我的操作系统驱动器现在有了更多的空间。

我认为如果您不想在 Program Files 中看到它,您甚至可以将链接设置为隐藏,但我没有尝试过,因为我并不担心它。

mklink 参考

编辑:我忘了提一下,当您打开命令提示符窗口时,如果您正在编辑 Program Files(右键单击 -> 以管理员身份运行),请以管理员身份运行它,否则您可能无权在 Program Files 中创建文件。

相关内容