Имя: Пароль:
1C
1С v8
Хранение файлов в томах на диске. Слишком длинное имя
0 altaykniga
 
30.05.22
16:23
Доброго времени суток, уважаемые специалисты. Windows server 2016/2019. УПП 1.3.176, платформа 8.3.20

В конфигурацию добавлен механизм хранения файлов в томах на диске. (храним изображения номенклаиуры и сканы договоров)
При попытке настрокить ЭДО, имя присоединенного файла xml к исходящему электронному документу получается слишком длинное (путь к файлу + наименование файла) - 308 символов

1с файл на диске создает, тут все ок, путь к файлу верный и имя файла верное, но при попытке выполнения метода "ФайлНаДиске.УстановитьВремяИзменения(ВремяИзменения);"  выходит исключение "Ошибка доступа к файлу"

В проводнике виндоус данный файл даже переименовать не дает, просто изменяешь название файла, жмем Enter, ошибок не возникает, но и имя файла не меняется

Прошу помощи умных людей, как можно решить данную проблему?
1 eRik
 
30.05.22
16:49
1. Попробовать UNC путь
2. Попробовать отключить ограничение https://winitpro.ru/index.php/2016/06/10/kak-v-windows-10-otklyuchit-ogranichenie-na-dlinu-puti-v-260-simvolov/
3. Сократить пути через симлинк
2 Kassern
 
30.05.22
16:57
(0) в винде ограничение вроде 270 символов, или около того для пути
3 Kassern
 
30.05.22
16:58
(2) точнее даже так:
Полное имя файла (включая расширение) в Windows может содержать до 260 символов, данное значение определено константой MAX_PATH в Windows API; например, полное имя файла максимально допустимой длины на диске C будет таким: «C:\<256 символов>null» (например, «C:\<254 символа>\<1 символ>null»).
4 Kassern
 
30.05.22
16:59
можете вот эту статью прочитать
https://habr.com/ru/post/307186/
5 ДедМорроз
 
01.06.22
00:12
Там есть механизм обхода длины имени,если в начале пути указать \\?\
Тогда общая длина пути будет до 32кб,и парситься без использования буфера с максимальной длиной имени.
Другое дело,как на это файловая система посмотрит,ее ограничение уже не обойти.