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

Вниз

как ловить ошибки в COM-е   Найти похожие ветки 

 
Dysan ©   (2004-03-12 10:27) [0]

Скажите как централизованно ловить в COM ошибки ?
как это делаеться в обычных прогах Application.OnException:=Процедура


 
Polevi ©   (2004-03-12 10:31) [1]

никак


 
Erik ©   (2004-03-12 10:47) [2]

Неправда можно! Вопрос конечно, что поймаеш, но, что поделаеш такая суюба у COM. Поробуй воспользоватся бублиотекой JCL, там есть процедуры JclStartExceptionTracking;
JclAddExceptNotifier(ExceptionMapper.LogException);
ExceptionMapper - это свой класс, но есть толковый пример. Запускай его перед TComponentFactory.Create


 
Asdor ©   (2004-03-12 11:04) [3]

Если твои классы написаны на Delphi и являются наследниками TComObject, то можно делать следующее:
1. Переопределить у твоего класса метод
   function SafeCallException(ExceptObject: TObject;
     ExceptAddr: Pointer): HResult; override;
 
 и в нем что-нить делать с Exception"ами, возникающими в методах твоего класса.
2. Установить твоему классу
    property ServerExceptionHandler: IServerExceptionHandler
3. Подменить функцию
function HandleSafeCallException(ExceptObject: TObject;
 ExceptAddr: Pointer; const ErrorIID: TGUID; const ProgID,
 HelpFileName: WideString): HResult;



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

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

Наверх




Память: 0.47 MB
Время: 0.046 c
3-1078070701
Desdechado
2004-02-29 19:05
2004.04.04
обработка BLOB-поля при сохранении изменений в ClientDataSet


1-1079632695
Chcnger
2004-03-18 20:58
2004.04.04
Числа


6-1074585782
KIE
2004-01-20 11:03
2004.04.04
Два компа по удаленке ...


3-1078401153
LAndreyV
2004-03-04 14:52
2004.04.04
Query1.Delete - иногда работает, а иногда выдает ошибку


3-1078504651
Aldor
2004-03-05 19:37
2004.04.04
MySQL. Работа с двумя таблицами, блокировка одной из них.