![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Узнать программно имя unit'a
DelphiLexx © (2007-02-05 10:31:00)В свой проект хочу внедрить систему оповещения разработчика о возникших ошибках программы.
Делаю я это так: в
[code=delphi]
except
end;
[/code]
размещаю процедуру которая отображает окно с сообщением о том, что в проге возникла ошибка и её возможность отправить разработку. Если пользователь нажмет отправить, то отправляется заархивированный лог файл. Хотелось бы сделать так, чтобы в тексте ошибки содержался имя unit'a и номер строки, где возникла эта ошибка.
Так вот, есть ли возможность сделать это программно?
umbra (2007-02-05 16:34:00) [1]не знаю, пишет ли он название модуля, но для некоммерческого использования бесплатен
http://www.madshi.net/madExceptDescription.htm
Loginov Dmitry (2007-02-05 16:19:00) [2]Так мобильник - вещь-то нужная. А вот платить за всякий вздор - не по-русски :)))
Германн (2007-02-05 16:14:00) [3]
> Loginov Dmitry © (05.02.07 16:01) [7]
К слову - II :)
Сколько стоит твой мобильник? И сколько ты тратишь на его рюшечки ежемесячно?
Loginov Dmitry (2007-02-05 16:01:00) [4]к слову :)
EurekaLog 5.x - Professional Company License 9547.09 руб.
EurekaLog 5.x - Professional Single License 3161.08 руб.
EurekaLog 5.x - Enterprise Single License 4757.58 руб.
EurekaLog 5.x - Enterprise Company License 14336.60 руб.
Германн (2007-02-05 15:50:00) [5]А зачем городить свой огород? Не лучше ли купить EurekaLog?
Loginov Dmitry (2007-02-05 15:45:00) [6]А если по теме, то следует вешать свой обработчик исключений (Application.OnException), а там уж и в лог и все что хочешь. Ну и неплохо бы было, если б в каждой процедуре, где может произойти ошибка, стояло примерно следующее:
procedure MyProc();
begin
try
except
on E: Exception do
raise Exception.Create('procedure MyProc -> ' + E.Message)
end;
end;
Хоть и геморно, но получше всяких там Ассертов. И пользователю не грех такое показать.
tesseract (2007-02-05 14:57:00) [7]
> Так Assert предназначен для разработчиков. В релизах эту
> хрень отключают.
Тебе экран, с сообщением об ошибке 1с выслать ? :-)
Игорь Шевченко (2007-02-05 14:48:00) [8]Loginov Dmitry © (05.02.07 11:23) [2]
Воля разработчика - закон. Захочет имя юнита - не будет отключать
Loginov Dmitry (2007-02-05 11:23:00) [9]> Assert пришедший из С должен помочь.
Так Assert предназначен для разработчиков. В релизах эту хрень отключают.
tesseract (2007-02-05 10:34:00) [10]
> Так вот, есть ли возможность сделать это программно?
Assert пришедший из С должен помочь.
http://www.citforum.ru/operating_systems/manpages/ASSERT.3.shtml