![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 8 Всего: 20 |
-------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
vinc2000 |
|
|||
![]() FlashEx [project] Профиль Группа: Участник Сообщений: 21 Регистрация: 15.11.2012 Где: Moscow Репутация: нет Всего: нет |
Ок. Потестил Eurek'ой -> ссылается на компонент регулятор громкости jantracker (начало модуля).
Eureka Results Удалил его - ошибка исчезла! Поставил заново - все тоже. Но компонент для меня незаменимый, поэтому прошерстил jantracker.pas, проблема я думаю в неособожденном
Кто что думает по этому поводу? P.S. Улетная вещь - эта ваша Эврика! Это сообщение отредактировал(а) vinc2000 - 3.4.2013, 22:33 Присоединённый файл ( Кол-во скачиваний: 4 ) ![]() |
|||
|
||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 8 Всего: 20 |
Ты не Leaks показывай, а Call Stack. И посмотри на какой строке исходника произошла ошибка. Это сообщение отредактировал(а) northener - 3.4.2013, 22:38 -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
vinc2000 |
|
||||
![]() FlashEx [project] Профиль Группа: Участник Сообщений: 21 Регистрация: 15.11.2012 Где: Moscow Репутация: нет Всего: нет |
А call stack у меня нет:( Только General и Leaks:
Строка 124, т.е.:
P.S. Начал копать глубже без jantracker - та же ошибка, только теперь ссылается на Controls.pas и на Classes.pas.
Мда, как говорится - Это только начало пути... ![]() Это сообщение отредактировал(а) vinc2000 - 3.4.2013, 23:03 Присоединённый файл ( Кол-во скачиваний: 4 ) ![]() |
||||
|
|||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 8 Всего: 20 |
Можешь выложить сюда эльфа? (Файл "Имяприложения.elf") -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 8 Всего: 20 |
Ага понял. Это было всего лишь сообщение об утечках памяти. Но топик-то вроде изначально был об AV. Ты вот получи AccessViolation при включенной Эврике. Тогда посмотрим на отчёт Эврики и поговорим. А на утечки памяти потом обратишь внимание. Они конечно зло. Но AccessViolation гораздо хуже. И гораздо труднее находить его причину. И уж утечки памяти (Memory Leaks) никак не могут быть причиной AccessViolation! Тут совсем обратная ситуация. Утечки памяти это когда программа просит у ОС выделить для себя память, получает её, как-то использует (чаще всего однократно) и забывает её возвращать ОС. И таким образом память будет потеряна. Программа её не использует, а другим программам эта память не может быть передана. AccessViolation же возникает в том случае, когда программа обращается к области памяти, которая ей не принадлежит. Либо не была выделена ОС, либо ранее была выделена ей, но уже возвращена ОС. P.S. ОС - Операционная система. В данном случае Windows. P.P.S. Термин программа стоит читать как процесс. -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
Beltar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 3 Всего: 7 |
Вполне возможно, что удалив компонент ты только уменьшил размер программы, так что разрушение памяти стало происходить где-то в "безопасной" зоне (ну может данные какие-то, которые можно безнаказанно затереть\испортить), добавил процедурку в обработчик и все, размер снова вырос, и ломается какая-то нужная таблица.
У меня в соседней теме ошибка вообще оказалась в непрописанном inherited Create. Причем сколько помню это inherited всегда вставлялсь автоматически при создании конструктора по Ctrl-Shift-C, можешь свои классы, если есть на подобное проверить, но подобное все-таки локализует проблему ошибочным классом. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
||||
|
||||
vinc2000 |
|
|||
![]() FlashEx [project] Профиль Группа: Участник Сообщений: 21 Регистрация: 15.11.2012 Где: Moscow Репутация: нет Всего: нет |
Я пока что ничего не путаю ![]() Если ты смотрел туториал - там тестится на XE2 в 7, а у меня D7 в XPSP3. (проблема с установкой EurekaLog уже решена) Ок. Я так понимаю что это дело может затянуться надолго ![]() Ковырять надо jantracker.pas, и файла elf у меня кстати нет:(. А где его искать то надо? У этой медали 2 стороны: нельзя не рассматривать такой вариант, когда все же никто не застрахован от подобного рода разрушений памяти. Я конечно не даю 100% гарантии, что логика верна (результаты FASTMM тому в доказательство), но все же стараюсь придерживаться "простоты и прозрачности кода", а также его периодической санации, т.е. удаляю/заменяю деструктивные участки. В целом благодаря модульности (видео-1 модуль, текст+аудио-2 модуль и т.д.) код не превращается в неперевариваемую кашу и может поэтому удается избегать тучи критических AV и AError'ов. Кто знает ![]() Это сообщение отредактировал(а) vinc2000 - 4.4.2013, 21:58 |
|||
|
||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 8 Всего: 20 |
Да забудь ты про утечки! Они тут не при чем. Когда появится ошибка, тогда появится и файл. В той же папке, что и программа. -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
vinc2000 |
|
|||
![]() FlashEx [project] Профиль Группа: Участник Сообщений: 21 Регистрация: 15.11.2012 Где: Moscow Репутация: нет Всего: нет |
Специально сейчас нашел AV во внешке exe - Call Stack теперь есть! И нашел el-файл (он был аж в Application Data\EurekaLab s.a.s\EurekaLog\Bug Reports)
Прикрепляю. AV-ошибка мне известна, т.е. она возникает не при закрытии программы, а при клике. Это сообщение отредактировал(а) vinc2000 - 4.4.2013, 22:42 Присоединённый файл ( Кол-во скачиваний: 8 ) ![]() |
|||
|
||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 8 Всего: 20 |
Очень хорошо, что нашел. (Я являюсь честным обладателем лицензии на Эврику, но версии 6. А в версии 6 эти файлы Эврика помещала в папку программы). Вот теперь открой этот файл при запущенной Дельфи и щёлкни по строке |7FFFFFFE|04 |00000000|006BA7E6|FlashEx.exe |002BA7E6|Unit3 |TForm3 |Next_btnClick |126[3] | Или открой модуль, в котором описан тип TForm3, найди в нем метод Next_btnClick и посмотри, что там находится на третьей строке полсле начального begin. И покажи эту строку тут. P.S. На худой конец кинь мне в личку сам EXE-файл и DLL файлы, которые ему нужны. Попробую найти проблему. Это сообщение отредактировал(а) northener - 5.4.2013, 01:58 -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
vinc2000 |
|
|||
![]() FlashEx [project] Профиль Группа: Участник Сообщений: 21 Регистрация: 15.11.2012 Где: Moscow Репутация: нет Всего: нет |
А в чем проблема-то northener? Эта ошибка связана с листанием листов pdf-файла и возникает она потому-что книга не загружена, а кнопки листания активны ![]() Я уже понял, что самое главное - когда при внешнем закрытии все ок!, а то что там при выходе в режиме компиляции вываливаются какие-то ErrorDialogs или AV - это все пурга ![]() См. вложение (Next_btn & Previous_btn обведены - а в коде условие с циклом) Это сообщение отредактировал(а) vinc2000 - 5.4.2013, 14:41 Присоединённый файл ( Кол-во скачиваний: 5 ) ![]() |
|||
|
||||
Чучмек |
|
|||
НЭТ БИЛЭТ ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 11.5.2008 Где: СССР Репутация: 14 Всего: 41 |
Уверен? Есть обращение в никуда. Просто под отладчиком память распределяется по-другому -------------------- умную мысль держи при себе, а дурной - поделись с другими |
|||
|
||||
Beltar |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 627 Регистрация: 11.1.2006 Репутация: 3 Всего: 7 |
Мне вот пока известен только один случай явной пурги, это неизвестное исключение при работе с базой, когда таблица не может лукапнуть что-то, т. к. KeyValue=NULL, в остальных случаях вряд ли стоит надеяться, что все прокатит.
-------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. ![]() Пищущий на C++ мужик. Даже если это мужик сидит в написанном на Delphi и жрущем паскалевскую библиотеку билдере. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |