|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Исключение InterBase
Здравствуйте. При работе с базой использую компоненты InterBase. Необходимо предусмотреть случай, когда необходимой для работы программы базы нет. Пытаюсь использовать исключения. Но ничего не получается. Программа вылетает с сообщением об ошибке, что поднято исключение класса EIBInterBaseError. Как правильно написать исключение, чтобы программа корректно срабатывала на такую ситуацию?
Код:
IBDatabase1.Connected:=True; После попытки открыть базу всё и начинается... |
#2
|
||||
|
||||
самый простой вариант
Код:
try IBDatabase1.Connected:=True; Except ShowMessage('Ошибка подключения к БД'); end; Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|
#3
|
|||
|
|||
Цитата:
эх, если бы всё было так просто. не воспринимает этого Delphi.. по идее, должно бы сработать: Код:
try IBDatabase1.Connected:=True; except on EIBInterBaseError do MessageDlg('Ошибка! Не найдена база!',mtError, [mbYes], 0); end; В ошибке-то, когда программа вылетает, именно этот класс исключений указан (EIBInterBaseError) самим Delphi, а при компиляции программы это всего лишь неизвестный идентификатор... если самостоятельно тип исключения задавать: Код:
type EIBInterbaseError = class (Exception); то снова вылетаю с той же ошибкой о поднятии класса исключения.. |
#4
|
||||
|
||||
меню Tools-Debugger Options вкладка Language Exceptions снять галочку Stop on Delphi Exceptions
Пишу программы за еду. __________________ |
#5
|
|||
|
|||
Цитата:
NumLock, Вы суперрр! Спасибо! |
#6
|
||||
|
||||
Только вернуть ее не забудьте в следующем проекте.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |