Вниз
Скачать: CL | DM;

Обработка исключений во время отладки без показа сообщ. об ошибке   Найти похожие ветки 

← →
romeo ©   (2004-02-10 11:27) [0]

Сабж. Или это не реально?


← →
Тимохов ©   (2004-02-10 11:31) [1]

Используй событие OnException у компонента TApplicationEvents.


← →
Ega23 ©   (2004-02-10 11:31) [2]

Tools -> Debugger Options -> Language Exceptions -> Stop on Delphi Exceptions


← →
Anatoly Podgoretsky ©   (2004-02-10 12:14) [3]

Ega23 © (10.02.04 11:31) [2]
Все равно покажет если будет исключение
Надо сажаться на Application.OnExeption и использовать условные директивы.


← →
Ega23 ©   (2004-02-10 13:11) [4]


> Anatoly Podgoretsky © (10.02.04 12:14) [3]
> Ega23 © (10.02.04 11:31) [2]
> Все равно покажет если будет исключение
> Надо сажаться на Application.OnExeption и использовать условные
> директивы.

Спсибо, учтём.


← →
Vit@ly ©   (2004-02-10 13:33) [5]

ИМНО очень не разумно для Обработка исключений во время отладки
Хотя бывают ситуации когда это упрощает отладку. У меня такое встречалось при работе в сети (приложение опрашивает, а часть компьютеров или один не включены).


← →
romeo ©   (2004-02-10 23:54) [6]

Э-э... Спасибо за советы, конечно (про Application.OnException). Но, видимо я не корректно задал вопрос. Имелось в виду следующее: есть некая функция

function SomeFunc(Param1, Param2, Param3: Real): Real;

При некоторой комбинации параметров в теле функции может быть либо деление на ноль, либо переполнение (EOverflow). Тогда в функции я вызываю EMyException, которое подразумевает совершенно определенный частный случай, что-то типа:

try
A := SomeFunc(B, C, D); // некислые вычисления
except
on EMyException do A := B + C / D;
end;


Открывая файл с кучей данных и далее их обрабатывая, EMyException может возникнуть десятки раз, а может и ни разу (файлы всякие бывают). Вышеприведенные строчки в теле программы встречаются частенько, до конца отладки программы еще далековато, и иногда приходится закрывать уйму показываемых окошек об ошибке (что совсем не круто ... :-)).
Так вот, мне нужно попадать на строку on EMyException do A := B + C / D; без просмотра всяких "полезных" сообщений...

ЗЫ. Тут подумалось - возможно ли создать потомка от EException, который бы вел себя "тихо"?


← →
Тимохов ©   (2004-02-11 11:13) [7]


> romeo © (10.02.04 23:54) [6]

Тогда см 2



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
3-79574
Бывающий
2004-01-29 12:15
2004.02.25
Kак открыть файл XLS RaedOnly? помогите ПЛЗ!


7-80303
наблюдатель
2003-12-07 18:17
2004.02.25
WM_ACTIVATE


1-79814
Aks
2004-02-11 12:21
2004.02.25
как узнать разрешение экрана


14-80141
_none_
2004-02-02 11:26
2004.02.25
Что такое


14-80246
тихий вовочка
2004-02-04 07:00
2004.02.25
Я стал папой!




   Наверх