Windows路径字符长度限制问题 您所在的位置:网站首页 什么是文件名最大长度为30字符 Windows路径字符长度限制问题

Windows路径字符长度限制问题

2024-01-07 11:27| 来源: 网络整理| 查看: 265

微软官网说明:

最大路径长度限制

在版本 1607 之前Windows版本中Windows 10,路径的最大长度为 MAX _ PATH, 定义为 260 个字符。 在更高版本的 Windows中,更改注册表项或组策略工具才能删除限制。 有关 完整详细信息,请参阅最大路径 长度限制。

在 Windows API ((以下段落) 中讨论的一些例外情况)中,路径的最大长度为 MAX _ PATH, 定义为 260 个字符。 按以下顺序构造本地路径:驱动器号、冒号、反杠、用反杠分隔的名称组件和终止 null 字符。 例如,驱动器 D 上的最大路径为"D:某些 \ 256 个字符的路径字符串 < > NUL",其中 < "NUL"表示当前系统代码页的不可见终止 > null 字符。 (此处 < > 字符集,用于视觉清晰,不能是有效路径字符串的一)

例如,如果要将具有长文件名的 git 存储库克隆到本身具有长名称的文件夹,则可能会达到此限制。

网上搜索了很多解决方法,比如 如何使Windows 10接受超过260个字符的文件路径,均以失败告终,嗐~~~

今天突然来灵感了,解决方法如下图:

完美!!!

================================================

官网解决方案:

在版本 1607 Windows 10中启用长路径

从 Windows 10版本 1607 开始,已从常见的 Win32 文件和目录函数中删除 MAX _ PATH 限制。 但是,必须选择加入新行为。

若要启用新的长路径行为,必须同时满足以下两个条件:

注册表项 Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\LongPathsEnabled (Type: REG_DWORD) 必须存在,并且必须设置为 1。 第一次调用受影响的 Win32 文件或目录函数后) 每个进程的系统 (将缓存密钥的值 (请参阅下面的函数) 。 在进程的生存期内,不会重新加载注册表项。 为了使系统上的所有应用能够识别密钥的值,可能需要重新启动,因为某些进程可能在设置密钥之前启动。应用程序清单还必须包含 longPathAware 元素。

1 注册表

还可以将此代码复制到可进行此设置的文件,或使用具有提升权限的终端窗口中的 .reg PowerShell 命令:

# CMD Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem] "LongPathsEnabled"=dword:00000001 # PowerShell New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" ` -Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force

此注册表项也可通过 中的 组策略控制 Computer Configuration > Administrative Templates > System > Filesystem > Enable Win32 long paths 。

2 应用程序清单

true

如果选择加入长路径行为,则这些目录管理功能将不再具有 MAX _ PATH 限制:CreateDirectoryW、CreateDirectoryExW GetCurrentDirectoryW RemoveDirectoryW SetCurrentDirectoryW。

如果选择加入长路径行为,则这些文件管理功能将不再具有 MAX _ PATH 限制:CopyFileW、CopyFile2、CopyFileExW、CreateFileW、CreateFile2、CreateHardLinkW、CreateSymb一LinkW、DeleteFileW、FindFirstFileW、FindFirstFileExW、FindNextFileW、GetFileAttributesW、 GetFileAttributesExW、SetFileAttributesW、GetFullPathNameW、GetLongPathNameW、MoveFileW、MoveFileExW、MoveFileWithProgressW、ReplaceFileW、SearchPathW、FindFirstFileNameW、FindNextFileNameW、FindFirstStreamW、FindNextStreamW、GetCompressedFileSizeW、GetFinalPathNameByHandleW。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有