Windows 10 1607 或 Windows Server 2016 或更高版本

Windows 10 1607 或 Windows Server 2016 或更高版本

我正在使用一个桌面应用程序来读取/写入本地文件系统上的文件夹和文件。

问题:其中一些文件的路径长度超过 260 个字符,从而触发此类错误:

PathTooLongException:指定的路径、文件名或两者太长。完全限定文件名必须少于 260 个字符,且目录名必须少于248个字符。

问题:如何让 Windows 允许长路径?
我使用的 Windows 版本很多,因此我希望按版本划分答案。

不同于Windows 10“启用 NTFS 长路径策略”选项缺失因为该问题仅涉及缺少一个选项。

答案1

第一的,检查你的 Windows 版本。如果您使用的是 Windows 10(版本 1607 - 周年更新)或 Windows Server 2016 或更高版本,请阅读以下章节。如果较早,请跳至此答案的最后一章。

Windows 10 1607 或 Windows Server 2016 或更高版本

打开Computer Configuration> Admin Templates> System> FileSystem

覆盖Enable Win32 long paths组策略条目Enable Win32 long paths,如下所示。

根据您的 Windows 版本,它可能被称为Enable NTFS long paths并且位于Local Computer Policy> Computer Configuration> Administrative Templates> System> Filesystem> NTFS

启用 Win32 长路径

启用 Win32 长路径

(谢谢magicandre1981截图)

请注意,你的应用程序需要设计为长路径感知因此,虽然启用组策略是必要的步骤,但它并不能保证您的应用程序能够使用长路径。

早于 Windows 10 1607 / Windows Server 2016 的版本

如果您的 Windows 版本较旧,那么您就没那么幸运了。

虽然存在一些技巧,但最终用户无法操作它们,所以如果您的应用程序不能处理长路径,那么除了升级 Windows 或保持路径较短之外您无能为力。

相关内容