Vnkai

Windows 下浏览器无法访问路径超长的文件夹

  •  
  •   Vnkai · Jun 27, 2025 · 1400 views
    This topic created in 346 days ago, the information mentioned may be changed or developed.

    虽然知道这是一个历史问题:最大路径长度限制

    修改了注册表和组策略,貌似没有太大作用。

    放一张代码片段,大家帮忙看一下

       if (entry.isDirectory) {
          const dirReader = entry.createReader() 
          let entries: any[] = []
    
          // 由于浏览器 API 限制每次只能读取 100 个文件,所以需要多次读取
          while (true) {
            const batch: any = await new Promise((resolve) =>
              dirReader.readEntries(resolve)
            )
            entries = entries.concat(batch)
            if (batch.length !== 100) {
              break
            }
          }
    
    ..........
    
            // 将文件添加到上传列表
            const file = await new Promise<File>((resolve) => {
              // console.log('<UNK>:', entry)
              entry.file(resolve)   //// 超长的路径到这就读取不到了,也不报错。
            }).catch((err) => {
              console.error('获取文件失败:', err)
              throw err
            })
            uploadMap.set(uploadKey, createUploadItem(file, currentPath))
          }
    
    3 replies    2025-06-27 13:40:17 +08:00
    ETiV
        1
    ETiV  
       Jun 27, 2025 via iPhone   ❤️ 1
    要为每个应用程序启用新的长路径行为,必须满足两个条件。 必须设置注册表值,应用程序清单必须包含 longPathAware 元素。

    这段话看了吗:必须满足两个条件。
    opengps
        2
    opengps  
       Jun 27, 2025
    超长路径属于使用不当的做法,需要解决问题的是使用方法,没必要所有问题都兼容处理,适当拦截提示就行了
    Vnkai
        3
    Vnkai  
    OP
       Jun 27, 2025
    感谢,说到也是。路径超长的场景确实罕见,偶尔这种情况,还是使用 mac 电脑省事。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5409 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 06:02 · PVG 14:02 · LAX 23:02 · JFK 02:02
    ♥ Do have faith in what you're doing.