Форум: "Основная";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
ВнизКак глобально отлавливать исключения? Найти похожие ветки
← →
Mx © (2005-07-22 18:33) [0]Допустим есть пачка модулей, просто исходных модулей. Не факт, что они будут использоваться в проекте, где есть TApplication. Так вот существует ли способ написать (зарегистрировать) обработчик, куда будут направляться все исключения? Переменная ExceptProc похоже не подходит, так как при наличии TApplication в ExceptProc ничего не придет. Об этом сказано в справке и уже проверено. Перелазил кучу модулей RTL и VCL и совсем запутался.
Дело в том, что у меня куча разных потоков и разных объектов в этих потоках, какие-то шарятся всеми, какие-то потоко-зависимы, а вот систему обработки исключений хотелось бы сделать единой, к тому же необходим четкий отлов не только "моих" ошибок (raise, которые я написал), но и остальных.
Возможно ли такое?
← →
Lexer © (2005-07-22 18:40) [1]Application.OnException
← →
Mx © (2005-07-22 18:45) [2]Если бы все было так просто! Это вообще-то пакет, причем для CLX, юзать в нем напрямую Application и событие, которое может быть переназначено (а тогда еще и TApplicationEvents понадобится) я думаю неправильно.
← →
Digitman © (2005-07-22 18:50) [3]
> Дело в том, что у меня куча разных потоков
вот и заключай тело поточной ф-ции в try..except
ничто этому не мешает, и это вовсе не сложно
все непрогнозируемые тобой исключения в потоках ты сможешь протоколировать, и процесс твой не рухнет при этом.
← →
Гаврила © (2005-07-22 18:53) [4]попробуй
Classes.ApplicationHandleException
← →
Lexer © (2005-07-22 18:53) [5]>Mx © (22.07.05 18:45) [2]
>юзать в нем напрямую Application и событие, которое может быть переназначено (а тогда еще и TApplicationEvents понадобится) я думаю неправильно.
главное работает, и как вариант вполне приемлен
← →
Mx © (2005-07-22 18:54) [6]
> Digitman © (22.07.05 18:50) [3]
Блин, а знаешь че оказалось! Ведь я так и сделал! Правда для другого и очень давно, а теперь подзабыл... Мне ведь действительно исключительно во вторичных потоках надо отлавливать все. Спасибо... за напоминание :)
А так получается, что универсального способа все-таки нет?
← →
Mx © (2005-07-22 18:55) [7]
> Гаврила © (22.07.05 18:53) [4]
> Classes.ApplicationHandleException
А если ее захватить конструктор TApplication? Гарантировано ли он загрузится раньше моего пакета?
← →
Гаврила © (2005-07-22 18:55) [8]Ккак говорится "поспешишь - штаны насмешишь"
короче, фигню сказал, пардон
← →
Mx © (2005-07-22 19:06) [9]
> Гаврила © (22.07.05 18:55) [8]
> короче, фигню сказал, пардон
Ха, я за последний месяц несколько раз сюда заходил и по ответам получалось, что я в основном этим и занимаюсь. Надо за город, на отдых... сори за офф
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.08.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.012 c