![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 13.08.2008
Сообщений: 76
|
![]()
Здравствуйте!
Передаю компоненту tmemo в качестве параметра Код: Код:
Код: Код:
Код: Код:
Если вызвать деструктор компонента раньше завершения программы, то invalid pointer operation. Если просто закрыть программу, то все гладко. |
![]() |
![]() |
![]() |
#2 | |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
![]() Цитата:
код покажи. Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 27.10.2014
Сообщений: 594
|
![]() |
![]() |
![]() |
![]() |
#4 | |
Пользователь
Регистрация: 13.08.2008
Сообщений: 76
|
![]() Цитата:
компонент, который использует memo и создается и отпевается динамически. Я тут немного дурака свалял в описании. Приношу извинения Все происходит в двух вариантах: 1. Динамически создается компонент 2. Передается мемо любым из вышеописанных способов 3. Работа с компонентом 4. Вызов деструктора компонента (там кроме inherited нет ничего) 5. При закрытии программы - invalid pointer operator При этом Если только: 1. Динамически создается компонент 2. Передается мемо любым из вышеописанных способов 3. Работа с компонентом 4. Закрыть программу (деструктор компонента вызовется автоматически в FormDestroy) то ошибки не возникает... Сравнивал owner,parent, значение указателя у memo в начале и после destroy - ничего не меняется. Пытался отбиться freenotification - не помогло Пытался работать не с самим memo, а с lines через указатель - та же картина |
|
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 13.08.2008
Сообщений: 76
|
![]() Цитата:
Т.е., динамичеки создается, заружается под завязку, потом уничтожается, чтобы выявить утечки и прочую пакость Последний раз редактировалось Turbine; 21.04.2016 в 22:30. |
|
![]() |
![]() |
![]() |
#6 |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
![]()
я ж просил код показать!
неужто вызываешь destroy() напрямую? показывай весь код, где компонент родится, живёт и помирает. Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
![]() |
![]() |
![]() |
#7 |
Баламучу слегка...
Участник клуба
Регистрация: 01.11.2006
Сообщений: 1,585
|
![]()
Для затравки... Почему const?
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 13.08.2008
Сообщений: 76
|
![]() |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 13.08.2008
Сообщений: 76
|
![]()
Проблему удалось решить довольно дебильным образом.
Причем второй раз сталкиваюсь с этим. Достаточно было просто поставить описание переменной типа tMemo в другое место секции public. В прошлый раз пришлось "переставлять" массивы. Чем руководствовался компилятор и в том и в другом случае неизвестно. |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ошибка Invalid Pointer Operation при работе switch | David Villa | Общие вопросы C/C++ | 5 | 02.06.2012 16:24 |
Invalid Pointer operation | hon | Общие вопросы Delphi | 6 | 22.11.2011 21:59 |
При удалении потока Invalid Pointer Operation | RIO | Общие вопросы C/C++ | 7 | 20.06.2010 21:49 |
Invalid pointer operation. | KoBRaAndrey | Общие вопросы Delphi | 6 | 02.06.2010 17:32 |
Invalid pointer operation | Димарик | Общие вопросы Delphi | 2 | 05.11.2007 09:53 |