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

Вниз

Как отловить причину закрытия программы?   Найти похожие ветки 

 
SkyN   (2009-08-24 13:54) [0]

Программа просто выгружается из памяти.
Application.OnException для данной ошибки не записывает в лог ничего.
По всей видимости, ошибка происходит не в основном потоке.
В событиях windows для приложений вижу: "Ошибка приложения project1.exe, версия 0.0.0.0, модуль project1.exe, версия 0.0.0.0, адрес 0x0007752c."

Как найти строку кода, в которой происходит ошибка?


 
clickmaker ©   (2009-08-24 13:57) [1]

> Как найти строку кода, в которой происходит ошибка?

запустить под отладчиком?


 
SkyN   (2009-08-24 13:59) [2]

> запустить под отладчиком?
ошибка плавающая, происходит у конечных пользователей, я пока воспроизвести её не смог


 
Сергей М. ©   (2009-08-24 14:01) [3]


> ошибка происходит не в основном потоке


Что мешает контролировать исключения не только в основном, но и в дополнительных потоках ?


 
SkyN   (2009-08-24 14:05) [4]


> Что мешает контролировать исключения не только в основном,
>  но и в дополнительных потоках ?

Куда копать?
Сейчас юзаю Application.OnException := MyException.ErrorCatch; . Этого не достаточно?


 
clickmaker ©   (2009-08-24 14:10) [5]

> MyException.ErrorCatch

а что это?


 
SkyN   (2009-08-24 14:15) [6]


 MyException = class
   class procedure ErrorCatch(Sender : TObject; Exc : Exception);
 end;

class procedure MyException.ErrorCatch(Sender : TObject; Exc : Exception);
begin
 try
   Error("Exception: ClassName="+Exc.ClassName + " Message="+Exc.Message + " Sender="+sender.ClassName);
 except
 end;
end;

процедура Error - пишет в лог-файл данную строку. Работает исправно, проверенно многократно :)


 
Сергей М. ©   (2009-08-24 14:27) [7]


> Этого не достаточно?


Конечно нет.
Это перехват исключений основного потока.


> Куда копать?


procedure TMyThread.Execute;
begin
 try
...
 except
   on e:Exception do ..
 end;
end;


 
SkyN   (2009-08-24 14:35) [8]

спасибо!



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
15-1251484795
DeadMeat
2009-08-28 22:39
2009.10.25
Windows 7 и перезапись EXE файлов


15-1251125704
boriskb
2009-08-24 18:55
2009.10.25
Это что?


15-1251405006
Юрий
2009-08-28 00:30
2009.10.25
С днем рождения ! 28 августа 2009 пятница


9-1182962956
Dib@zol
2007-06-27 20:49
2009.10.25
Многоугольник


15-1251078092
имя
2009-08-24 05:41
2009.10.25
Деноминация