![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Отлов динамической ошибки по адресу 0х... [WinXP]
__DATA__ © (2007-08-24 17:56:00)У пользователя время от времени программа вылетает с ошибкой
Заголовок: Find text: xServer.exe - Application Error
Текст ошибки: The exception unknown software exception (0x0eedfade) accurred in then application at location 0x7c812a5b
Кнопки: Ok и Cancel
Как мне найти строчку кода в .pas файле где происходит данная ошибка ума приложить не могу :(
Буду рад любым советам и наставлениям
Заранее благодарен!
georgius (2007-08-29 08:20:00) [21]Чтобы проверить гипотезу об исчерапнии памяти достаточно предложить юзеру нажать Ctrl+Alt+Del и посмотреть в Task Manager-е колонку "память".
Но что-то мне подсказывает, что дело не в этом. ActiveX-ы какие-нибудь используются?
GrayFace (2007-08-28 18:26:00) [22]* 0x7c812a5b - это kernel32.dll в ХР
GrayFace (2007-08-28 18:25:00) [23]Rouse_ © (24.08.07 21:27) [2]
0eedfade - говорит о том что памяти нема... Что говорит либо о хорошем мемлике, либо о том что ее действительно нема...
Как Вы это узнали?
TStas © (25.08.07 4:42) [3]
А ещё так бывает, когда объект уже уничтожин, при жизни у него был адрес 0x7c812a5b и с ним что-то сделать хотят.
Не бывает, т.к. 0x7c812a5b - это kernel32.dll
__DATA__ (27.08.07 17:02) [9]
Увеличил размер файла подкачки, всеравно ошибка выскакивает примерно с той же частотой раз в 1-2 часа, видимо это не связано с утечкой памяти, хоть и небольшая утечка памяти в программе есть ...
Независимо от файла подкачки, у программы в Win32 есть менее 2Гб (при особых настройках - менее 3Гб) виртуальной памяти, может кончается она... В любом случае, как-то жирно.
Anatoly Podgoretsky (2007-08-27 18:34:00) [24]Отладчик, голова, настойчивость.
А лучше не допускать таких ситуаций изначально - тогда достаточно пункта 2
__DATA__ (2007-08-27 17:02:00) [25]
> Rouse_ © (27.08.07 11:56) [8]
Увеличил размер файла подкачки, всеравно ошибка выскакивает примерно с той же частотой раз в 1-2 часа, видимо это не связано с утечкой памяти, хоть и небольшая утечка памяти в программе есть ...
> Anatoly Podgoretsky © (27.08.07 09:18) [7]
Не подскажете ли вы, какими инструментами можно воспользоваться для решения данной задачи, а также был бы очень рад статье, где данный процесс описывается, т.к с поиском ошибок по их адресу я ранее не сталкивался
Rouse_ (2007-08-27 11:56:00) [26]
> Так ведь должна выскакивать ошибка Out of memory?
Где? В системе?
Anatoly Podgoretsky (2007-08-27 09:18:00) [27]адрес 0x7c812a5b говорит, что он не в его ехе, а в системе, в библиотеках, поэтому отладка и поиск намного сложнее, надо проверять все адреса, которые передаются в АПИ функции.
Сергей М. (2007-08-27 09:02:00) [28]
> __DATA__ (24.08.07 17:56)
Что показывает пошаговая трассировка ?
__DATA__ (2007-08-27 07:46:00) [29]
> vpbar © (25.08.07 16:46) [4]
Я уже использую неплохой компонент отлова и показа места ошибок в исходном коде Castalia, однако данную ошибку компонент не перехватывает.
Через Search-Find error если ввести адрес 0eedfade перекинет на пустое место.
> Rouse_ © (24.08.07 21:27) [2]
Так ведь должна выскакивать ошибка Out of memory?
> TStas © (25.08.07 04:42) [3]
Думаю что данная ситуация в моем коде практически исключена ...
vpbar (2007-08-25 16:46:00) [30]Попробуйте обработчик ошибок из madCollection http://madshi.net/. Очень удобно. Правда там только для некомерческого применения.
Можно еще собрать обработчик с помощью JclDebug www.delphi-jedi.org .
Можно воспользоваться пунктом Search-Find Error в делфи, чтобы найти место ошибки по адресу.
TStas (2007-08-25 04:42:00) [31]А ещё так бывает, когда объект уже уничтожин, при жизни у него был адрес 0x7c812a5b и с ним что-то сделать хотят.
Rouse_ (2007-08-24 21:27:00) [32]0eedfade - говорит о том что памяти нема... Что говорит либо о хорошем мемлике, либо о том что ее действительно нема...
__DATA__ (2007-08-24 17:58:00) [33]Забыл добавить. Если нажать кнопку Cancel приложение немедлено закроется, если жать Ок то ошибка будет появляться снова и снова, потом ее текст изменится на другой, потом снова на другой и т.д в конце концов приложение закроется