Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.032 c
14-1091110764
clickmaker
2004-07-29 18:19
2004.08.15
RTF -> Text


14-1091093968
stone
2004-07-29 13:39
2004.08.15
Перлыы коментаторов :))


3-1089975996
Pafnuty
2004-07-16 15:06
2004.08.15
распечататка DBGrid


9-1083140607
Tsaiper
2004-04-28 12:23
2004.08.15
нужен DDUTIL.PAS


1-1091295268
TopT
2004-07-31 21:34
2004.08.15
TListView и Checkboxes:=true





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский