syqqy 发表于 2024-3-13 23:36

windows10操作系统文件名和路径名长度的严重问题

本帖最后由 syqqy 于 2024-3-14 19:54 编辑

【请仔细看贴中问题描述,不是说windows不支持长文件和长路径名,而是说,在长路径名下,可以拖放进去长文件名,但是,长路径名下的其它非长文件名文件却不能改名为长文件名!而且这些问题在第三方文件管理器(如:ef_commander)或第三方文件搜索器(如:everything)中没有这些问题。】


以前以为windows自带的播放器不好用,现在看来,连Windows自带的资源管理器也一样不好用,BUG很严重!而且长期存在多年了!

对于windows 下的长文件名支持,笔者认为windows系统下资源管器有BUG,想反馈问题,但有又不知道怎么去反馈,特开此贴,希望微软官方人员直接或间接能看到,或者有能力的人直接反馈到MS的工程部门,以真正解决windows下的长路径,长文件名的支持。

笔者使用的windows操作系统为 windows10 22H2 专业版。

在下面【问题描述】中存在的问题,按照微软官方提供的方法修正后(两种方法都使用),依然无效!


微软官方在线资源:在 Windows 10 版本 1607 及更高版本中启用长路径 :

方法一:修改注册LongPathsEnabled值为1


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

方法二: 启用组策略win32长路径

gpedit.msc:本地计算机策略>计算机配置>管理模板>系统>文件系统>启用win32长路径





问题描述:


之前在windows10 短路径名下建立的长名称文件,比如.txt文本文件,文件名称示例在下方——247字符的.txt文件名(我目前在windows资源管理器下,可以达到的文件名长度最大值为247个字符,不包含文件扩展名和点分割符)可以移动到相对较长的路径下——234字符的路径(路径名称示例在下方)。


当然,这个247字符的长名文件也可以移动到234字符路径的上级目录下——176字符的路径(路径示例在下方)。


可是在176字符的路径下,存放的歌曲文件名(仅作示例,可以是任意格式文件,此时发现文件名长度还与隐藏或不隐藏已知文件名后缀有关,两种情形见下方<情形A>和<情形B>),在资源管理器下,最多支持71个字符,此时发现,路径名长度+文件名长度总共只支持247(176+71=247),而不是像之前拖入的txt文件名本本身就支持247个字符长度。

当然,上面的操作是仅限于windows的资源管理本身。如果用第三方软件everything,得到的文件名最大长度为251个字符,而且上面提到的在176字符的路径下,文件名长度依然可以以达到251个字符,也就是说,windows资源管理器下的文件操作,长路径下的长文件名是个问题!(不要喷你用不到这种情况!)


(另外,此时,如果在命令提示符下,路径也切换不到176字符的路径下,只能切换到该路径的上级目录。)




附:

247字符的.txt文件名:
牛津通识读本百本纪念套装(共100册)后殖民主义与世界格局基督教神学记忆简明逻辑学进化卡夫卡是谁康德考古学的过去与未来科学革命科学哲学克尔凯郭尔历史之源量子理论罗兰·巴特马基雅维里美国总统制尼采牛顿新传全球化面面观全球经济史人生的意义设计,无处不在社会学的意识生活中的心理学叔本华数学天文学简史维特根斯坦与哲学文学理论入门我们时代的伦理学西方艺术新论现代日本性存在选择理论亚里士多德的世界医学伦理印度哲学祛魅犹太人与犹太教哲学的思与惑政治的历史与边界政治哲学与幸福根基中国文学资本主义12345

234字符的路径名:
J:\Bin\Media\Music\Western Music\#Classical Music\#Top Famous Composers\#Antonio Vivaldi\Vivaldi:The Four Seasons\Accardo - Vivaldi:Le Quattro Stagioni, Concertos RV 580 & 551\Vivaldi - Le Quattro Stagioni, Concertos RV 580 & 551 WAVE

176字符的路径名:
I:\Bin\Media\Music\Western Music\#Classical Music\#Top Famous Composers\#Antonio Vivaldi\Vivaldi:The Four Seasons\Accardo - Vivaldi:Le Quattro Stagioni, Concertos RV 580 & 551\

<情形A>

路径名+文件名+点分割符+文件后缀,字符长度总数目超过247个字符后,已经无法再加长该路径下的文件名长度(不隐藏文件名后缀)
I:\Bin\Media\Music\Western Music\#Classical Music\#Top Famous Composers\#Antonio Vivaldi\Vivaldi:The Four Seasons\Accardo - Vivaldi:Le Quattro Stagioni, Concertos RV 580 & 551\01.Concerto No. 1 in E major, RV269 'La primavera' - I. Allegro123.flac


<情形B>

路径名+文件名,字符长度总数超过247个字符后,已经无法再加长该路径下的文件名长度(隐藏已知文件名后缀),
I:\Bin\Media\Music\Western Music\#Classical Music\#Top Famous Composers\#Antonio Vivaldi\Vivaldi:The Four Seasons\Accardo - Vivaldi:Le Quattro Stagioni, Concertos RV 580 & 551\01.Concerto No. 1 in E major, RV269 'La primavera' - I. Allegro12345678




OA01 发表于 2024-3-14 08:54

火星

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

lemonle79 发表于 2024-3-14 10:25

留个印学习一下,之前整理下载的音乐文件名时碰到过类似的情况,没有深究就跳过去了

syqqy 发表于 2024-3-14 11:50

OA01 发表于 2024-3-14 08:54 https://bbs.pcbeta.com/static/image/common/back.gif
火星

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

按照微软官方提供的方法,两种方法同时使用,依然无效!

Beta 发表于 2024-3-14 12:08

试过以前是图片打不开,就是文件名太长了

OA01 发表于 2024-3-14 15:37

查了下,说自带文件资源管理器还是不支持长路径。https://stackoverflow.com/questions/73682699/even-with-longpathsenabled-set-to-1-windows-10-explorer-doesnt-seem-to-support

可以用其它软件,比如 7-zip。试了下,好像长路径是支持的,长文件名还是不行。






syqqy 发表于 2024-3-14 18:30

OA01 发表于 2024-3-14 15:37 https://bbs.pcbeta.com/static/image/common/back.gif
查了下,说自带文件资源管理器还是不支持长路径。https://stackoverflow.com/questions/73682699/even-with ...

请注意:我说的是长路径下的长文件名。
页: [1]
查看完整版本: windows10操作系统文件名和路径名长度的严重问题