Максимальная длина пути


В Windows API максимальной длиной пути является величина MAX_PATH, которая определяется как 260 символов. Путь структурируется как ниже указано: имя диска, двоеточие, наклонная черта влево(обратный слэш), компоненты, отделенные обратными слэшами, и нуль - символ окончания строки. Например, максимальный путь на диске D - D: <256 символов> NUL.

Версии Unicode  некоторых функций допускают максимальную длину пути из 32 767 символов, который составлен из компонентов длиной до 255 символов. Чтобы определить такой путь используйте префикс "\\?\ ". Например, " \\?\ D:\<path> ". Чтобы определить такой UNC путь используйте префикс "\\?\UNC\ ". Например, "\\?\UNC\<server>\<share>".

Обратите внимание! на то, что эти префиксы не используются непосредственно как часть пути. Они указывают, что путь должен быть передан системе с минимальными изменениями. Такое включение обеспечивает то, что Вы не можете использовать косые черты (прямые слэши (/)), чтобы обозначить разделители пути, или точку, чтобы обозначить текущий каталог. 
Обратите внимание! также и на то, что Вы не можете использовать префикс "\\?\"  относительного пути. Поэтому, относительные пути ограничены длиной символов MAX_PATH.

При использовании API, чтобы создать каталог, заданный путь не может быть таким длинным, потому что Вы не сможете добавить в конец имя файла формата 8.3.

Обратите внимание! на то, что оболочка и файловая система могут иметь различные требования. Пожалуй можно создать путь при помощи API, который оболочка Интерфейса пользователя (UI) не сможет обработать.

 

Назад в оглавление темы
На главную страницу темы

Hosted by uCoz