[personal profile] borislvin
Вопрос комьпьютерного ламера: как устроено ограничение на размеры имени файлов в Windows?

Периодически сталкиваюсь с проблемой, когда система отказывается копировать файлы, ссылаясь на слишком длинное название. При этом она прекрасно их сохраняет с этими названиями, и так же прекрасно перемещает между директориями. А вот копировать - отказывается.

Приходится идти кривым путем, то есть вместо простого копирования файла из директории А в директорию Б - открывать файл и сохранять его заново в нужной директории.

Как такое может быть? Может быть, где-то выставлено специальное ограничение на длину имени копируемого файла, и можно это ограничение подредактировать, выставив его таким же, как ограничение на длину имени файла при сохранении и перемещении?

Date: 2014-04-30 06:38 am (UTC)
From: [identity profile] pargentum.livejournal.com
Кстати, еще гипотеза - у вас стоит какой-то shell extension, который участвует в копировании, но не в переносе.
Это более правдоподобно, чем старые API в самом эксплорере.

Date: 2014-04-30 02:43 pm (UTC)
From: [identity profile] akovalenko.livejournal.com
И ещё гипотеза: при переносе содержимое переносимых каталогов, собственно, никак не обрабатывается: если мы переносим /очень/длинное/имя из каталога /одно в каталог /другое, в рамках этой операции ни разу не строится полный путь /другое/очень/длинное/имя -- причём этот путь не только ни разу не передаётся в вызове ядра, его даже внутри ядра-то незачем строить. Подкаталог перемещается в другое место коррекцией ссылок в родительских каталогах, в его содержимое никто не вникает.

Можно представить себе организацию каталогов, которая могла бы отслеживать образование слишком длинных имён и при перемещении. Но это непросто и небесплатно в смысле производительности.

(Если бы речь шла о Linux VFS layer, была бы не гипотеза, а инфа 100%. В случае Windows, пожалуй, всё-таки гипотеза, но я очень удивлюсь, если она не соответствует действительности).

Profile

borislvin

May 2025

S M T W T F S
    123
45678910
111213 14 151617
18192021222324
25262728293031

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 3rd, 2025 07:56 pm
Powered by Dreamwidth Studios