Имя: Пароль:
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кб,и парситься без использования буфера с максимальной длиной имени.
Другое дело,как на это файловая система посмотрит,ее ограничение уже не обойти.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn