6

可能重复:
为什么 Windows 中存在 260 个字符的路径长度限制?

我试图找出一种方法来绕过这个可怕的 260 个字符的完全限定路径限制,同时我想知道为什么一开始就有路径限制!?我知道对某些人来说 260 似乎是“很多”,但自从我遇到这个问题以来,它确实不是。

基本上:
为什么必须有字符限制?
如何绕过它?

4

3 回答 3

12

使用\\?\UNC 前缀来打破路径的“DOS 模式”。UNC 路径的最大长度为 32k 个字符。

更多信息在这里:http: //msdn.microsoft.com/en-us/library/aa365247.aspx

于 2011-01-12T18:38:44.070 回答
10

MSDN

Windows API 有许多函数也有 Unicode 版本,以允许最大总路径长度为 32,767 个字符的扩展长度路径。这种类型的路径由用反斜杠分隔的组件组成,每个组件的最大长度为 GetVolumeInformation 函数的 lpMaximumComponentLength 参数中返回的值(该值通常为 255 个字符)。要指定扩展长度的路径,请使用“ \\?\”前缀。例如,“ \\?\D:\very long path”。

于 2011-01-12T18:39:30.793 回答
1

嗯,首先,这与 C# 无关,与存在限制的 Windows API 有关。:)

看看这个问题及其答案,这将引导你到 MSDN: Naming Files, Paths, and Namespaces

Unicode 文件路径(在问题的答案和 MSDN 文章中描述)可能是解决方案,但有一些警告。

于 2011-01-12T18:39:26.820 回答