Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Обработка исключений (Delphi и ActiveX)

497
08 сентября 2006 года
IL84
267 / / 24.04.2003
Есть главная и дочерняя формы. На дочерней форме расположен компонент ActiveX, в который поступают данные. Но если в компонент поступают неверные данные, он падает. Под отладчиком Delphi вылетает EInvalidOp: Invalid Floating Point Operation.
Если запустить приложение отдельно, то никаких исключений не вылетает, а просто ActiveX-компонент перестает перерисовываться.

Задача: перехватить это исключение и обработать его.

1) Поставить try нельзя физически, т.к. ошибка происходит внутри самого ActiveX.
2) Обработка Application.OnException не помогает, т.к. исключение там не появляется.
3) Само создание дочерней формы обложено try/except и срабатывает в том случае, если класс ActiveX незарегистрирован.

Соответственно надо ставить обработчик в другом месте, как это делает, например, сама Delphi. Вопрос в том, где его поставить и как.
1.9K
13 сентября 2006 года
Borland_prog
149 / / 25.01.2006
в активексе и ставь
497
18 сентября 2006 года
IL84
267 / / 24.04.2003
В ActiveX поставить нельзя, ибо это отдельный OCX-модуль и к нему обернтка для Delphi.
547
19 сентября 2006 года
Hydra
488 / / 20.06.2006
Скорее всего никак не перехватишь. А эксепшн этот не дельфы, а непосредственно винды.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог