![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
OnException [D6, Win2k, WinXP]
Black-Grin © (2004-07-23 01:07:00)Товарищи ;)) подскажите, можно-ли как-то выслеживать, что пользователь нажимал (на какие кнопки на форме) перед появлением ошибки. Ну или допустим вообще - как выцепить содержание пусть даже всех мною объявленых переменых? Данная вешь как-то, кроме как "руками" оброботчик писать реализуется? Спасибо!
Игорь Шевченко (2004-07-30 16:15:00) [1]Digitman © (30.07.04 16:05)
Отлов исключений в дополнительных потоках, разумеется, никакого отношения не имеет к Application.OnException. Это просто дополнение.
Digitman (2004-07-30 16:05:00) [2]
> Игорь Шевченко © (30.07.04 16:03) [15]
Игорь, а к App.OnExcpt это какое отношение имеет ?
Игорь Шевченко (2004-07-30 16:03:00) [3]Digitman © (30.07.04 15:58)
Если таковые предусмотрены, то в обрамлении try..except функции дополнительных потоков, почему бы и нет ?
Digitman (2004-07-30 15:58:00) [4]действия юзера могут привести и к исключениям в доп.трэдах, если оные предусмотрены алгоритмом ... и никакой App.OnExcpt здесь не поможет
Игорь Шевченко (2004-07-30 15:53:00) [5]По сабжу: в программе можно предусмотреть запись N последних действий пользователя и в Application.OnException записывать их в лог вместе с возникшей ошибкой. N выбирается достаточно разумным.
Mim1 (2004-07-24 08:04:00) [6]
> У меня Mozilla установлена, "кнопочки" - не действуют.
Ага, я понял.
> могу ли я получить ВЕСЬ список тегоф форматирования текста?
Я конечно не создатель :), но вот известные мне теги
<B ></B ><I ></I ><U ></U ><CODE ></CODE > без пробелов естественно
Ega23 (2004-07-23 19:24:00) [7]О, так прошло!
Создателям: могу ли я получить ВЕСЬ список тегоф форматирования текста? Чтоб хотя бы вручную их вставлять...
Ega23 (2004-07-23 19:23:00) [8]Mim1 © (23.07.04 19:20) [9]
У меня Mozilla установлена, "кнопочки" - не действуют.
Mim1 (2004-07-23 19:20:00) [9]
> [8] Ega23 © (23.07.04 13:42)
Уважаемый Ega23, не могли бы вы выделять цитируемые куски текста тегами "<i > </i >", или ставить в начате цитируемых строк символ ">". А то запутанно получается.
Ega23 (2004-07-23 13:42:00) [10]Зачем же уничтожать информацию о возникшем исключении??
Тогда уж лучше так:
try
...
except
on E:exception do
begin
E.Message := E.Message + ' {Имя_Твоей_Процедуры}';
raise E;
end;
end;
Фактически теже яйца, только в профиль.
А это как? Я обычно делал
EMyException = class(Exception);
Я это и имел ввиду.
KSergey (2004-07-23 13:38:00) [11]> [6] Ega23 © (23.07.04 13:18)
> В наиболее тяжких местах кода можно делать следующее
>
> try
> ...
> except
> on E:exception do
> raise EMyException.Create(E.message+' '+Имя_Твоей_Процедуры);
> end;
Зачем же уничтожать информацию о возникшем исключении??
Тогда уж лучше так:
try
...
except
on E:exception do
begin
E.Message := E.Message + ' {Имя_Твоей_Процедуры}';
raise E;
end;
end;
> Только EMyException перед этим зарегистрировать надо.
А это как? Я обычно делал
EMyException = class(Exception);
Есть другой вариант?
Ega23 (2004-07-23 13:18:00) [12]Application.OnException
Пиши в текстовый файл Exception.Message
В наиболее тяжких местах кода можно делать следующее
try
...
except
on E:exception do
raise EMyException.Create(E.message+' '+Имя_Твоей_Процедуры);
end;
Только EMyException перед этим зарегистрировать надо.
Black-Grin (2004-07-23 13:11:00) [13]конструктивные ответы у вас получились..
Sergey Kaminski (2004-07-23 10:23:00) [14]вот я и хочу сделать расширеный лог файл действию юзверя чтоб вычеслить ошибку..
Так сделай ;)
АлексейК (2004-07-23 06:48:00) [15]Можно.
Black-Grin (2004-07-23 02:02:00) [16]это я и имел ввиду под "руками"... просто возникает иногда ситуация, что клиент звонит = у меня ошибка вылетает... приходишь и спрашиваешь, мол где. Он говорит, ну вот нажал сюда... а что до этого делал? - Не помню... вот я и хочу сделать расширеный лог файл действию юзверя чтоб вычеслить ошибку..
-=Iton=- (2004-07-23 01:42:00) [17]try..except