Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.04.2015, 07:09   #21
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Turbine
Что бы все споры были отброшены и "некоторые умники" перестали делать свои советовбросы бессмысленные приложи сюда код программы целиком. Иначе еще постов 20 бесполезных будет.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.04.2015, 09:41   #22
Turbine
Пользователь
 
Регистрация: 13.08.2008
Сообщений: 76
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Что бы все споры были отброшены и "некоторые умники" перестали делать свои советовбросы бессмысленные приложи сюда код программы целиком. Иначе еще постов 20 бесполезных будет.
Спасибо за совет.!
Но это свыше 50000 строк кода, десяток модулей и данные для обработки свыше 17 мб. И такая странная ошибка, поэтому спросил из-за чего может быть такое? Решение нашлось. Оно противоречит здравому смыслу. Но благодаря нему все встало на все места.
Спасибо!
Turbine вне форума Ответить с цитированием
Старый 11.04.2015, 10:18   #23
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

И какое же решение нашлось?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.04.2015, 11:09   #24
Turbine
Пользователь
 
Регистрация: 13.08.2008
Сообщений: 76
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
И какое же решение нашлось?
Перенести temp_1: tStringList; в другое место раздела public того же компонента.

А до этого его не получалось освободить перед завершение программы в отличие от других tStringList.
И ReportMemoryLeaksOnShutdown показывал утечку именно в temp_1
Turbine вне форума Ответить с цитированием
Старый 11.04.2015, 11:31   #25
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Т.е. изначально он был описан в секции, где обычно описываются вложенные компоненты класса?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.04.2015, 11:45   #26
Turbine
Пользователь
 
Регистрация: 13.08.2008
Сообщений: 76
По умолчанию

Да. Это было ошибочным решением?
Turbine вне форума Ответить с цитированием
Старый 11.04.2015, 12:27   #27
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну не то чтобы совсем ошибочным, однако не рекомендуемым.
Насколько я помню D6 была строга - никаких левых свойств в главной секции класса. D2009 это позволяла. По крайней мере не ругалась у меня на такие исходники, хотя я по привычке как мог их адаптировал под нормальное состояние. ИМХО это уже зависит от компилятора, поэтому лучше не рисковать, и подобные "неVCLные" свойства хранить в секциях Private или Public.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.04.2015, 12:43   #28
Turbine
Пользователь
 
Регистрация: 13.08.2008
Сообщений: 76
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
ИМХО это уже зависит от компилятора, поэтому лучше не рисковать, и подобные "неVCLные" свойства хранить в секциях Private или Public.
В том то и дело... что оно было в паблик, в паблике и осталось, только в другом месте.
Turbine вне форума Ответить с цитированием
Старый 11.04.2015, 12:58   #29
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

В таком случае я не "понимайтен".
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.04.2015, 13:34   #30
StriderX
Форумчанин
 
Регистрация: 21.04.2014
Сообщений: 115
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
В таком случае я не "понимайтен".
Скорее всего просто где-то повреждает память приложения. Это не обязательно запись мимо массива. Есть и нюансы со строками, и со связкой dll\exe, и какой-нибудь мискаст указателя и т.п.
В своё время занимались перестановкой "asm nop end" строчкой выше\ниже пока не нашли источник проблем %)
По диагностике. Если есть стабильное воспроизведение, то иногда выходит проще найти повреждённые данные и поставить бряк на запись по адресу.
StriderX вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подтверждения при выходе из программы Ayubkhon Общие вопросы Delphi 18 18.06.2013 00:53
Сохранение состояние Button - а при выходе из программы! JunioR_BK Помощь студентам 3 16.07.2012 20:46
Окно запроса при выходе из программы Shouldercannon Общие вопросы Delphi 9 10.07.2012 15:15
Ошибка при выходе из программы Warn Общие вопросы Delphi 3 07.11.2011 16:16
Зависание программы при выходе codermoder Работа с сетью в Delphi 6 18.12.2010 23:16