Работа с файлами

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
AlexY
Сообщения: 15
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Работа с файлами

Сообщение AlexY »

кусок кода в котором есть открытие dbf файла для импорта в Галактику при отсутствии такого файла выдает ошибку и закрывает Галактику.

fdiskr:=dbfOpen('c:\expimp\galimport.dbf',stOpen);

хотя судя из описания fdiskr в этом случае должна получать значение 0. якобы это стандартная ситуация когда файла может не быть... есть возможность проверить существование файла или отловить исключение?
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Работа с файлами

Сообщение edward_K »

if fileexist('c:\expimp\galimport.dbf')
{

}
else message('Файл не найден') :)
AlexY
Сообщения: 15
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Re: Работа с файлами

Сообщение AlexY »

у меня Галактика 5.74 . при компиляции vip говорит, что такой функции нет. может она както не так называется?
AlexY
Сообщения: 15
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Re: Работа с файлами

Сообщение AlexY »

нашел блок _try {}
НО! даже если я в этот блок помещаю
fdiskr:=dbfOpen('c:\expimp\galimport.dbf',stOpen);
итакого файла на диске не существует - выдается рантаймерор и галактика закрывается! кто знает что можно сделать?
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Работа с файлами

Сообщение edward_K »

а extfun.res подключен в cfg?
там описание этой функции сидит
AlexY
Сообщения: 15
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Re: Работа с файлами

Сообщение AlexY »

я обошел этот момент следующим образом. в файл проекта prj дописал строку
#include external.fun

в этом файле есть строка
function FileExist(string ):boolean; external;

где на самом деле лежит эиа функция не понят, но помогло.

Всем спасибо
Ответить