windows11

关注公众号 jb51net

关闭
操作系统 > Windows系列 > windows11 >

轻松突破260字符限制! Win11启用长路径支持的教程

脚本之家

在 Windows NT 中资源管理器和诸多传统的 Windows API 都对路径长度有限制,这个限制是 260 个字符 (包括盘符、冒号、反斜杠和文件名等等),如果文件的整个路径超过 260 个字符则在访问、复制、删除时都会提示路径太长或文件名太长的错误。

这种限制属于历史遗留问题,最初微软设置这个限制主要是用来兼容旧版文件系统例如 FAT 以及兼容早期的 Windows API,但在现代开发设计中文件夹层级非常深的情况也非常常见,例如 Node.js 项目中的 mode_modules 文件夹层级就非常多。

在 Windows 系统中,「路径长度限制」一直是个让人头疼的老大难问题。出于历史兼容性考量,Win32 API 默认把「完整路径」限制在 260 个字符以内,这个长度由常量MAX_PATH来定义。

为了解决这个问题,并提升兼容性。从 Windows 10 1607 开始,微软在 Win32 API 中引入了「长路径支持」功能。启用后,用户和应用程序就可以使用最长约 32767 个字符的路径,大大提升了复杂文件目录结构的兼容性。

接下来,我们就来看看在 Windows 11 中,如何为所有用户开启或关闭 Win32 长路径支持。

Windows 11 文件名和路径长度限制

1、微软官方文档怎么说

D:\主文件夹\我是一个子文件夹\我是一个孙子文件夹\我是一个重孙子文件夹\demo.txt

让我们来快速对比一下:

项目默认最大长度是否可扩展
单个文件(夹)名称~255 个字符
完整路径260 个字符(默认)✅ ~32767 个字符

2、超出限制会怎么样

微软文档只是理论值,实际测试结果可能有些玄幻,大致会出现以下几种情况:

指定的文件名无效或太长

目标路径太长

启用 Win32 长路径支持

启用长路径支持后,就能打破MAX_PATH限制,让常用的 Win32 文件和目录操作函数处理超过 260 个字符的路径。以后再遇到「套娃」式文件夹,也不用再担心操作失败。

1、通过「设置」

仅适用于 Windows 11 25H2 及以高版本。

1、按Windows + I快捷键打开「设置」,进入「系统」>「高级」。

2、在「文件资源管理器」区域中,打开「启用长路径」开关。

打开「启用长路径 」开关

2、通过组策略

如果你使用的是 Windows 10 1607 及以上版本的专业版、教育版或企业版,可以更改组策略实现:

1、按Windows + R快捷键打开「运行」对话框,输入gpedit.msc并回车,打开「本地组策略编辑器」。

2、依次展开「计算机配置」>「管理模板」>「系统」>「文件系统」。

3、将「启用 Win32 长路径」策略,设置为「已启用」。

4、重启电脑让设置生效。

打开「启用 Win32 长路径」组策略

3、通过注册表

1、按Windows + R打开「运行」对话框,输入regedit并回车,打开注册表编辑器。

2、导航到以下位置:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

3、找到名为LongPathsEnabled的 DWORD (32 位) 值(没有就新建),并将其十六进制值设置为:

4、重启电脑让设置生效。

指定 LongPathsEnabled 注册表值

注意事项

开启 Win32 长路径支持后,并不意味着所有软件都能自动适配。只有在应用程序的程序清单(Application Manifest)中声明了longPathAware元素,明确表明支持长路径的应用,才能真正突破原有限制,充分利用这一特性。