Windows中“\\?\”构造的名称是什么?

时间:2015-02-17 18:12:31

标签: windows winapi explorer

我不得不帮助有人删除一个文件夹,里面有奇怪的字符导致路径重新互换为不同的路径:

c:\test.     -> c:\test

我花了一段时间才回忆起\\?\构造,因为我不知道它叫什么或如何搜索它。但是,一旦我记得它,就很容易:

\\?\c:\test. -> c:\test.

这个构造的名称是什么,我(和其他人)可以搜索它?

1 个答案:

答案 0 :(得分:1)

我认为它没有广泛使用的官方名称,所以我怀疑你在任何搜索中都会走得很远。这里描述:https://msdn.microsoft.com/en-gb/library/windows/desktop/aa365247.aspx#maxpath

  

Windows API有许多函数也具有Unicode版本,允许扩展长度路径,最大总路径长度为32,767个字符。这种类型的路径由反斜杠分隔的组件组成,每个组件都取决于GetVolumeInformation函数的lpMaximumComponentLength参数中返回的值(此值通常为255个字符)。要指定扩展长度路径,请使用" \\?\"字首。例如," \\?\ D:\非常长的路径"。

对于此用法,它可能被称为扩展长度路径前缀。然而,前缀用于其他目的,最具体地是抑制用户模式路径规范化,这是您自己的目的。

正如您从评论中看到的那样,对于最合适的名称,有很多不同的意见。我想我们都同意这个东西没有一个正式使用的名字!