Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо