从此
📄文章 #️⃣专题 🌐酷站 👨‍💻技术 📺 📱

🏠 » 📄文章 » 内容

 欢迎来访!

Windows启用文件夹win32长路径超过260字符

🕗2024-08-07👁️23

Windows 系统中较为保守的最大路径长度限制一直为人所诟病。在 Windows 系统的默认配置下,最大路径长度为 MAX_PATH,定义为 260 个字符。除去路径开头的驱动器号、冒号、反斜杠以及路径末尾的终止字符,实际可用的部分只有 256 个字符。而在 Windows 的文件资源管理器中,由于一些额外保留字符限制,实际可使用的路径长度会更短一些。

256 个字符看似不少,但在我们的命名规范下,项目目录名、片名、特典名、CD 目录名、歌曲名,这些字段如果有多个较长的部分累加在一起,就很可能超过长度限制。

长年以来,我们都在与路径长度限制进行抗争,压缩各个字段的命名,尽最大努力压缩到 240 个字符之内。但是在 2024 年的今天,我们还是得说,240 个字符真的是太少啦!

一方面,即使我们保证压缩到 240 个字符之内,也无法保证在观众本地就不超过限制,因为显然观众并不一定下载到磁盘根目录,并且下载时多个 10-20 字符的前缀路径也很常见;另一方面,从长远角度来看,制作一些大合集项目时,即使我们每个字段长度都压缩到最小,有时也不可避免会超过限制。


针对最大路径长度限制的问题,Windows 给出了一个不算完整的解决方案:
从 Windows 10 版本 1607 开始,可以启用长路径功能。

以下有三种启用长路径的方法,可以根据自身情况进行选择。

1. 通过 PowerShell 进行设置

(1). 使用管理员模式启动 PowerShell
(2). 执行以下命令

New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
-Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force

(3). 重启计算机

2. 通过注册表文件 (.reg) 进行设置

(1). 新建一个 .txt 文本文件
(2). 将以下命令复制到文件中

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem]
"LongPathsEnabled"=dword:00000001

(3). 将文件后缀名改为 .reg
(4). 双击 .reg 文件执行
(5). 重启计算机

3. 通过组策略编辑器进行设置 (需要 Windows 专业版)

(1). 使用 Windows键 + R 组合键调出 运行 窗口,输入 gpedit.msc 启动组策略编辑器
(2). 按以下路径选择配置项,开启长路径功能
英文路径:

Computer Configuration > Administrative Templates > System > 
Filesystem > Enable Win32 long paths

中文路径:

计算机配置 > 管理模板 > 系统 > 文件系统 > 启用 Win32 长路径

(3). 重启计算机


开启长路径功能之后,应用程序清单包含了 longPathAware元素的大部分软件,就可以正常使用超长路径了。

不过需要注意的是,并非所有应用程序都支持长路径,比如 Windows 自带的文件资源管理器,即使开启长路径功能也无法处理超长路径的文件。

如果有编辑超长路径文件的需求,可以使用cmd、powershell、或第三方的更强大的工具,比如 One Commander