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

Вниз

AccessViolation при уничтожении интерфейсов   Найти похожие ветки 

 
Polymorphic ©   (2003-04-30 16:36) [0]

При уничтожении всяких интерфейсов DirectDraw методом _release появляется до фига EAccessViolation (у меня пять). Мне всего 16, а на интерфейсы у меня вообще аллергия! Дебаггер даже не показал место ошибки! Может кто-нить с этим кошмаром встречался?
ЗЫ. Пробовал не освобождать интерфейсы - ошибок стало две :).


 
NailMan   (2003-04-30 17:33) [1]

Уничтожать их надо не _Release, а простым присваиванием ему значения nil, типа:
DDraw := nil;

метод _Release несколько для других целей


 
Polymorphic ©   (2003-05-01 14:10) [2]

Спасибо большое. Но тогда я не понял М. Краснова (автор книги "DirectX. Графика в проектах Delphi"). В первых примерах он действительно присваивал интерфейсам nil. Но затем заявил, что интерфейсы классически уничтожаются _release и стал использовать это в своих программах, также вызывавших EAccessViolation при завершении.
А всё-таки интересно, что будет, если не освобождать интерфейсы вообще. Мусор в системной памяти?


 
cyborg ©   (2003-05-01 15:19) [3]

Он там говорит о Delphi5, о чём там и сказал, что в шестой и более нужно делать просто nil.



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

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

Наверх




Память: 0.47 MB
Время: 0.031 c
3-8323
gray_hagen
2003-10-10 18:56
2003.11.03
Псевдоним


14-8635
Delirium^.Tremens
2003-10-14 09:36
2003.11.03
Пора менять имидж!


1-8465
Шишкин Илья
2003-10-24 18:11
2003.11.03
Как убрать значок приложения с TaskBar a


1-8353
P0tia
2003-10-22 17:04
2003.11.03
Как программно загрузить форму


1-8381
Djoniki
2003-10-22 21:49
2003.11.03
Почему это не работает веть это так просто..............