Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];

Вниз

Access Violation в работе TStringList   Найти похожие ветки 

 
Сергей Резников   (2003-12-19 18:17) [0]

При создании доч. формы: MainForm.ChildList.Add(IntToStr(Self.Handle));
При разр.: MainForm.ChildList.Delete(MainForm.ChildList.IndexOf(IntToStr(Self.Handle)));
После закрытия последней формы и открытия новых форм выскакивает (на первой форме) AV. ChildList есесно создан при ссозд форме.


 
Тимохов   (2003-12-19 18:19) [1]

Все-таки кода бы побольше.
Откуда ты эти команды вызываешь?


 
Сергей Резников   (2003-12-19 18:27) [2]

Child.Oncreate: MainForm.ChildList.Add(IntToStr(Self.Handle));
Child.Ondestroy: MainForm.ChildList.Delete(MainForm.ChildList.IndexOf(IntToStr(Self.Handle)));

MainForm.Oncreate: ChildList := TStringList.Create.
ChildList объявлен в Public`е формы.


 
Sandman25   (2003-12-19 18:38) [3]

Если AV на строке MainForm.ChildList.Add(IntToStr(Self.Handle)),
причем вызывается это в TChildForm.OnCreate,
а MainForm.ChildList все еще жив, то надо опять перезагрузить компьютер :)


 
Тимохов   (2003-12-19 18:39) [4]

Вообще говоря, мистика. Вроде все верно.


 
Сергей Резников   (2003-12-19 18:40) [5]

Всё ажур пока не закроешь посл. форму и не начнёшь открывать по новой, тогда первая форма и рожает исключение !!!


 
Sandman25   (2003-12-19 18:44) [6]

[5] Сергей Резников © (19.12.03 18:40)

На какой строке? Под отладчиком проходили?


 
Сергей Резников   (2003-12-19 18:48) [7]


> Sandman25 © (19.12.03 18:44) [6]

MainForm.ChildList.Add(IntToStr(Self.Handle));
после вышесказанного.


 
Тимохов   (2003-12-19 19:17) [8]

Я ж говорю, мистика.
В приведенном куске кода ошибок нет. Чтобы понять в чем дело надо видеть значительно больше. Скорее всего ошибка в скрытом от нас куске кода.


 
Сергей Резников   (2003-12-20 07:52) [9]

Я выяснил, что AV происходит вообще при созд. доч. окна после закрытия всех прежних доч. окон ! Это совсем непонятно !!!


 
Владислав   (2003-12-20 11:05) [10]

Нужно больше кода.


 
Владислав   (2003-12-20 11:08) [11]

И кстати, в чем потайной смысл использования этого стринглиста?


 
Digitman   (2003-12-20 11:51) [12]

тайный смыл стринглиста гораздо круче нежели банальный смысл списка MDIChildren[] )


 
Юрий Зотов   (2003-12-20 12:05) [13]

> Сергей Резников © (20.12.03 07:52) [9]
> Я выяснил, что AV происходит вообще при созд. доч. окна после
> закрытия всех прежних доч. окон ! Это совсем непонятно !!!

Вероятнее всего, где-то идет обращение по битой ссылке (а битой она становится после закрытия последней дочерней формы). Похоже, для ссылки на дочернюю форму Вы где-то используете глобальную переменную (или глобальный список, массив...) при Action=caFree в OnClose дочерней формы.

IMHO, проход отладчиком даст гораздо больше пользы, чем 10 форумов, вместе взятых.



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

Форум: "Основная";
Текущий архив: 2004.01.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
14-12074
Ega23
2003-12-10 11:23
2004.01.05
Дизайнер объектов


14-12040
Nikolay M.
2003-12-11 10:59
2004.01.05
Раздел с задачками на разминку мозгов


3-11801
Delf
2003-12-02 16:34
2004.01.05
Очень медленно предаются данные запроса по сети


3-11791
h0use
2003-12-03 16:51
2004.01.05
Как результат запроса записать в поток?


14-12054
Undert
2003-12-10 12:22
2004.01.05
ColorAllocate





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский