Сообщество программистов Autodesk в СНГ
ADN Club => Ошибки в AutoCAD и вертикальных приложениях => Тема начата: Doublefish от 08-06-2017, 10:53:32
-
Добрый день
Если задать путь до файла внешней ссылки растрового изображения например длиной 250 символов - ошибка eFileAccessErr
Подскажите пожалуйста, какова максимальная длина пути для внешней ссылки растрового изображения?
Для внешней ссылки DWG длина пути до файла 255 символов задается нормально, а почему для внешней ссылки растрового изображения с длиной пути более 200 символов появляется ошибка eFileAccessErr?
-
Может потому, что сам Windows не поддерживает такие пути? Сам файл (не в автокаде) вы можете открыть, удалить или переместить?
-
Подскажите пожалуйста, какова максимальная длина пути для внешней ссылки растрового изображения?
Думаю, что она такая же как и максимальная длина пути в Windows (возможно за вычетом нескольких байт). Специальных ограничений нет.
-
По факту разница в длине пути у внешней ссылки dwg и растрового изображения есть: если путь до файла вн. ссылки одинаковый и > 200 и < 255 символов, то для ссылки dwg ошибки нет, а для растра есть!
Хотелось бы узнать на сколько путь для вн. ссылки растрового изображения меньше чем 255 символов, чтобы избежать ошибки eFileAccessErr, может быть об этом где нибудь написано на сколько он меньше и какова максимальная длина?
Примечание: ошибка возникает при задании относительного пути у внешней ссылки растра!
Т.е. полный путь в данном случае складывется из пути папки главного файла dwg + указанный относительный путь до файла растра и вот он почему то должен быть менее 200 символов, иначе eFileAccessErr.
-
может быть об этом где нибудь написано на сколько он меньше и какова максимальная длина?
Это нигде официально не записано. Официально записано, что длина имени файла может быть до 255 байт: https://knowledge.autodesk.com/support/autocad/troubleshooting/caas/sfdcarticles/sfdcarticles/About-the-maximum-length-of-the-file-name-of-the-Autodesk-AutoCAD.html
-
Примечание: ошибка возникает при задании относительного пути у внешней ссылки растра!
Т.е. полный путь в данном случае складывется из пути папки главного файла dwg + указанный относительный путь до файла растра и вот он почему то должен быть менее 200 символов, иначе eFileAccessErr.
Так а длина полного пути к растровому файлу какой получается? Небось как раз около 255?
-
Речь идет о длине пути до растра внешней ссылки, если задан относительный путь до растра.
Опытным путем установлено что если длина пути до файла получается менее 200 символов, то ошибки нет, а вот если до файла растра длина пути получается в пределах примерно от 200 до 255 символов - то ошибка eFileAccessErr (при этом если внешняя ссылка dwg, то ошибки то нет, поэтому и возник вопрос).
Проверял в AutoCAD 2014 и 2016.
Это баг ?
-
Это баг ?
Возможно.
-
Надо пример сделать?
-
Если ты вручную (без кода) делаешь тоже самое, то тоже возникает ошибка?
-
Если вставлять вручную растровое изображение с относительным путем, то даже если длина до файла от корня диска составляет 257 символов, то никакой ошибки нет, растр вставляется и отображается. Но если чертеж сохранить и открыть - то растр уже со статусом "Не найден" и не отображается.
Ошибка возникает при программном задании относительного пути внешней ссылки растрового изображения если длина полного пути до файла более 200 символов (+- несколько символов, точную границу не удалось выявить, т.к. на разных файлах она почему то немного отличается ).
-
Да. Похоже, что с относительными путями какой-то баг. Вручную добавил файл с относительным путём (суммарная длина около 230) - он добавился. Файл сохранился, но после открытия файла AutoCAD не находит растр. При абсолютном пути находит нормально.
-
Перепроверил в AutoCAD 2018.0.2 - поведение аналогичное. Отправлю в Autodesk.
-
Запрос отправил. Перспектив для старых версий (2014...2016) не вижу. Подождём.
-
Такое поведение в Autodesk подтвердили. Без весомого 'business case' ( http://adn-cis.org/forum/index.php?topic=2640.0 ) рассчитывать на исправление не приходится.