Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.15;
Скачать: CL | DM;

Вниз

OnException   Найти похожие ветки 

 
Black-Grin   (2004-07-23 01:07) [0]

Товарищи ;)) подскажите, можно-ли как-то выслеживать, что пользователь нажимал (на какие кнопки на форме) перед появлением ошибки. Ну или допустим вообще - как выцепить содержание пусть даже всех мною объявленых переменых? Данная вешь как-то, кроме как "руками" оброботчик писать реализуется? Спасибо!


 
-=Iton=- ©   (2004-07-23 01:42) [1]

try..except


 
Black-Grin   (2004-07-23 02:02) [2]

это я и имел ввиду под "руками"... просто возникает иногда ситуация, что клиент звонит = у меня ошибка вылетает... приходишь и спрашиваешь, мол где. Он говорит, ну вот нажал сюда... а что до этого делал?  - Не помню... вот я и хочу сделать расширеный лог файл действию юзверя чтоб вычеслить ошибку..


 
АлексейК   (2004-07-23 06:48) [3]

Можно.


 
Sergey Kaminski ©   (2004-07-23 10:23) [4]

вот я и хочу сделать расширеный лог файл действию юзверя чтоб вычеслить ошибку..

Так сделай ;)


 
Black-Grin   (2004-07-23 13:11) [5]

конструктивные ответы у вас получились..


 
Ega23 ©   (2004-07-23 13:18) [6]

Application.OnException

Пиши в текстовый файл Exception.Message

В наиболее тяжких местах кода можно делать следующее

try
...
except
on E:exception do
raise EMyException.Create(E.message+" "+Имя_Твоей_Процедуры);
end;

Только EMyException перед этим зарегистрировать надо.


 
KSergey ©   (2004-07-23 13:38) [7]

> [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:42) [8]

Зачем же уничтожать информацию о возникшем исключении??
Тогда уж лучше так:
try
...
except
on E:exception do
begin
E.Message := E.Message + " {Имя_Твоей_Процедуры}";
raise E;
end;
end;

Фактически теже яйца, только в профиль.

А это как? Я обычно делал
EMyException = class(Exception);

Я это и имел ввиду.


 
Mim1 ©   (2004-07-23 19:20) [9]


> [8] Ega23 ©   (23.07.04 13:42)

Уважаемый Ega23, не могли бы вы выделять цитируемые куски текста тегами "<i > </i >", или ставить в начате цитируемых строк символ ">". А то запутанно получается.


 
Ega23 ©   (2004-07-23 19:23) [10]

Mim1 ©   (23.07.04 19:20) [9]

У меня Mozilla установлена, "кнопочки" - не действуют.


 
Ega23 ©   (2004-07-23 19:24) [11]

О, так прошло!
Создателям: могу ли я получить ВЕСЬ список тегоф форматирования текста? Чтоб хотя бы вручную их вставлять...


 
Mim1 ©   (2004-07-24 08:04) [12]


> У меня Mozilla установлена, "кнопочки" - не действуют.


Ага, я понял.


> могу ли я получить ВЕСЬ список тегоф форматирования текста?


Я конечно не создатель :), но вот известные мне теги
<B ></B ><I ></I ><U ></U ><CODE ></CODE > без пробелов естественно


 
Игорь Шевченко ©   (2004-07-30 15:53) [13]

По сабжу: в программе можно предусмотреть запись N последних действий пользователя и в Application.OnException записывать их в лог вместе с возникшей ошибкой. N выбирается достаточно разумным.


 
Digitman ©   (2004-07-30 15:58) [14]

действия юзера могут привести и к исключениям в доп.трэдах, если оные предусмотрены алгоритмом ... и никакой App.OnExcpt здесь не поможет


 
Игорь Шевченко ©   (2004-07-30 16:03) [15]

Digitman ©   (30.07.04 15:58)

Если таковые предусмотрены, то в обрамлении try..except функции дополнительных потоков, почему бы и нет ?


 
Digitman ©   (2004-07-30 16:05) [16]


> Игорь Шевченко ©   (30.07.04 16:03) [15]


Игорь, а к App.OnExcpt это какое отношение имеет ?


 
Игорь Шевченко ©   (2004-07-30 16:15) [17]

Digitman ©   (30.07.04 16:05)

Отлов исключений в дополнительных потоках, разумеется, никакого отношения не имеет к Application.OnException. Это просто дополнение.



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

Текущий архив: 2004.08.15;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.038 c
4-1089132842
Луарвик
2004-07-06 20:54
2004.08.15
Модуль ShlObj (Win32 API Shell objects Interface Unit)


14-1091171821
ISP
2004-07-30 11:17
2004.08.15
Путин подписал закон, запрещающий электронные библиотеки


14-1091209760
Кириешки
2004-07-30 21:49
2004.08.15
Хотели задачек - пожалуйста.


1-1091185261
Фагот
2004-07-30 15:01
2004.08.15
Завершение программы


1-1091209523
GuAV
2004-07-30 21:45
2004.08.15
ToolBar как в Explorer