Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

EnableControls- AccessViolation [D7]


TrainerOfDolphins ©   (2006-12-04 13:10:00) 

Добрый день!
Есть примерно такой код:
with SomeIBTable do
 begin
    DisableControls;
       Filter:=Somestring;
       Filtered:=true;
    EnableControls;{AccessViolation Error}
 end;

Подскажите, пожалуйста, по какой причине  вообще может возникать данная ошибка при вызове EnableControls. Может установка фильтра тут и не причём...


ЮЮ   (2006-12-05 03:01:00) [1]


> Да, это всё хорошо, но что мне искать в Call Stack?

Проследть цепочку вызовов приведшей к AV. Оно ведь может оказаться а каком нибудь обработчике  SomeIBTable, вызов которого не предполагался, а вовсе не в этом коде и даже в VCL-компоненте   Поставить бряк в потенционально опасном месте.
Дойти до места AV можно и по F7, поставив бряк на строке EnableControls;
Cама строка SomeIBTable.EnableControls - не место для AV.


Сергей М.   (2006-12-04 15:06:00) [2]


> Anatoly Podgoretsky ©   (04.12.06 15:03) [5]


Все может быть.


Anatoly Podgoretsky   (2006-12-04 15:03:00) [3]

> Сергей М.  (04.12.2006 15:02:04)  [4]

Проблема вообще может быть за пределами данного кода.


Сергей М.   (2006-12-04 15:02:00) [4]


> TrainerOfDolphins


Проблема - в содержимом Somestring.


TrainerOfDolphins   (2006-12-04 14:12:00) [5]


> Отладчик - самое грозное оружие против AV.
> Включи 'Use Debug DCUs' в обциях проекта, ReBuild его и
> в тот момент, когда AV возникает:
> 1) смотришь Call Stack - цепочку всех вызовов методов до
> проблемного
> 2) F7 после этого тоже работает.

Да, это всё хорошо, но что мне искать в Call Stack? Я там понимаю половину :( того, что там написанно. Как мне по его сообщениям определить где я и почему лезу не в ту область памяти?


TrainerOfDolphins   (2006-12-04 13:19:00) [6]

Таки когда закоментировал установку фильтра, ошибки не было...
Не возникает также ошибки тогда, когда таблица подключена к мастеру (даже при установке фильтра).


ЮЮ   (2006-12-04 13:19:00) [7]

Отладчик - самое грозное оружие против AV.
Включи 'Use Debug DCUs' в обциях проекта, ReBuild его и в тот момент, когда AV возникает:
1) смотришь Call Stack - цепочку всех вызовов методов до проблемного
2) F7 после этого тоже работает.


Наверх

Титульная страница Поиск, карта сайта Написать письмо