![]() |
|
Ошибка при открытии файла DBF | ☑ | ||
---|---|---|---|---|
0
Azgerd
13.03.19
✎
13:43
|
Здравствуйте!
В конфигурации на платформе 8.2 Во внешней обработке (обычная форма) есть код: <code> БДШ = Новый XBase; БДШ.ОтображатьУдаленные = Ложь; БДШ.Кодировка = КодировкаXBase.ANSI ; FSO = Новый COMObject("Scripting.FileSystemObject"); КаталогБД = ЭлементМассива.Путь; ПутьБДШ = ЭлементМассива.ПолноеИмя; БДШ.ОткрытьФайл(fso.GetFile(ПутьБДШ).ShortPath,,0); </code> Название файла DBF в (ПутьБДШ) имеет больше 8 символов типа 000001000005000.dbf. Вопрос: у одних клиентов этот файл открывается нормально, у других тот же самый файл не открывается, выдаёт ошибку: ВнешняяОбработка.sh81_prih.Форма.Форма.Форма(770)}: Ошибка при вызове метода контекста (ОткрытьФайл) БДШ.ОткрытьФайл(fso.GetFile(ПутьБДШ).ShortPath,,0); по причине: Длина имени файла превысила 8 символов. Почему у одних клиентов с одной и той же конфигурацией система съедает длиный файл а у других нет? |
|||
1
RomanYS
13.03.19
✎
13:55
|
(0) судя по СП требование на имя файла - есть. Если где-то работает, значит ошибка.
А зачем вот это FSO = Новый COMObject("Scripting.FileSystemObject"), чем встроенный объект Файл не угодил? |
|||
2
Azgerd
13.03.19
✎
14:00
|
(1) Обработку не я писал, но вот это все "FSO = Новый COMObject("Scripting.FileSystemObject")", насколько я понял и позволяет открывать длинные файлы.
Вся эта байда у 8 - ми клиентов работает, а у двух нет... Так что это вряд ли ошибка, скорее всего дело в каких-то настройках. |
|||
3
RomanYS
13.03.19
✎
14:16
|
(2) Аа, понял!
Ну так смотри, что ShortPath возвращает на проблемных компах. |
|||
4
Garykom
гуру
13.03.19
✎
14:21
|
Переименовать файл (скопировать в новый с коротким именем) не судьба перед тем как читать его?
|
|||
5
Azgerd
13.03.19
✎
14:24
|
(4) Да уже собираюсь сделать так, но все же интересно что за фигня! Почему у одних работает у других нет, причина должна же быть.
|
|||
6
RomanYS
13.03.19
✎
14:25
|
(5) Ну судя по ошибке ShortPath не вернула то, что должна
|
|||
7
Гость из Мариуполя
гуру
13.03.19
✎
14:27
|
(5) фигня вопрос. В реестре отключены короткие имена. В яндексе инфы навалом
вот, навксидку https://support.microsoft.com/ru-ru/help/121007/how-to-disable-8-3-file-name-creation-on-ntfs-partitions |
|||
8
Гость из Мариуполя
гуру
13.03.19
✎
14:30
|
(5) + а, к примеру, вот как пересоздать короткие имена
http://moonlightsoft.blogspot.com/2015/12/windows.html |
|||
9
Azgerd
13.03.19
✎
15:58
|
||||
10
Azgerd
13.03.19
✎
16:00
|
Пришлось копировать исходный файл в короткий файл.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |