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

Вниз

Delphi 7, приложение падает, если включена оптимизация   Найти похожие ветки 

 
Pit   (2011-12-06 11:45) [0]

Если в настройках компилера включена галочка оптимизации - то приложение падает при загрузке, выдается AV..

Есть какие-нибудь рецепты почему так может быть и как исправлять, на что обратить внимание? Может быть есть какие-то фиксы для D7 по этому поводу?


 
Palladin ©   (2011-12-06 11:47) [1]

У тебя ошибка в программе.


 
Pit   (2011-12-06 11:56) [2]

а я не знаю никакой более подробной информации в данном контексте. При трейсе вылетает при выходе из функции (после "end;"). Но за сообщение большое спасибо, полезно.

Насчет ошибки - не факт, приложение используется как минимум сотней корп. клиентов и никто не жалуется на стабильность с одной стороны. С другой стороны, если откомпилить при включенной оптимизации - приложение 100% падает при загрузке...


 
И. Павел ©   (2011-12-06 11:56) [3]

> [0] Pit   (06.12.11 11:45)

При Access Violation приложение может падать где угодно. Просто при включеной оптимизации звещзды сложились так, что AV всплыл быстрее, чем с выключенной. В любом случае, нужно искать и исправлять AV, т.к. без оптимизации AV тоже себя рано или поздно проявит.


 
Сергей М. ©   (2011-12-06 12:00) [4]


> я не знаю никакой более подробной информации в данном контексте


Как это "не знаю" ?
А адреса в сообщении об AV - они для Пушкина, да ?


 
Anatoly Podgoretsky ©   (2011-12-06 12:10) [5]

> Pit  (06.12.2011 11:45:00)  [0]

Рекомендация одна - восспользуйся отладчиком и проверь код программы.


 
Юрий_   (2011-12-06 12:21) [6]


> И. Павел ©   (06.12.11 11:56) [3]


Не факт. Могут быть ошибки в самой оптимизации. Более того, в ранних версиях делфи они совершенно точно были, есть ли в D7 - сказать трудно.
В любом случае, отладчик + UseDebugDcus


 
Inovet ©   (2011-12-06 12:38) [7]

> [6] Юрий_   (06.12.11 12:21)
> Могут быть ошибки в самой оптимизации.

В 99.9(9) % случаев они в программе. Автору повезло - ошибка стабильно воспроизводится,  найти намного проще.


 
Плохиш ©   (2011-12-06 12:42) [8]


> Юрий_   (06.12.11 12:21) [6]
>
>
> > И. Павел ©   (06.12.11 11:56) [3]
>
>
> Не факт. Могут быть ошибки в самой оптимизации. Более того,
>  в ранних версиях делфи они совершенно точно были

Плохому танцору известно, что мешает...


 
han_malign   (2011-12-06 14:57) [9]


> В 99.9(9) % случаев они в программе.

- 99% - запарывается указатель стека({$OPTIMIZATION OFF} влечет {$STACKFRAMES ON})...
(именно указатель, а не данные на стеке - иначе STACKFRAMES не спасло бы)
Обычно такое происходит при неправильном указании соглашения о вызове при импорте функций или объявлении функции обратного вызова(stdcall.vs.cdecl)...
UseDebugDcus - тут вообще не в тему, а отладчик поможет только если в [View->Debug Windows->Call Stack(или CPU, в зависимости от скила)] отслеживать момент когда стек умер - или просто внимательно проверить объявления всех функций которые явно или неявно вызываются из функции по выходу из которой происходит крах...


 
Юрий_   (2011-12-06 15:14) [10]


> Плохому танцору известно, что мешает...

Хочешь об этом поговорить?


 
Pit   (2011-12-06 19:05) [11]

han_malign, спасибо огромное за сообщение!
Очень похоже на правду, там где-то рядом используется дин. подгрузка DLL, буду копать это направление.


 
Плохиш ©   (2011-12-06 19:16) [12]


> Юрий_   (06.12.11 15:14) [10]
>
>
> > Плохому танцору известно, что мешает...
>
> Хочешь об этом поговорить?
>

Я проблем чужой психики не решаю, идите к психиатру.



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

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

Наверх




Память: 0.5 MB
Время: 0.007 c
2-1323765953
_qwerty_
2011-12-13 12:45
2012.04.01
узнать значение автоинкрементного поля


15-1323090102
Kostafey
2011-12-05 17:01
2012.04.01
Построение визуальной модели данных по SQL (DDL)


2-1323789641
Мелкий
2011-12-13 19:20
2012.04.01
О высоте строки в ListView


2-1323940774
igorium
2011-12-15 13:19
2012.04.01
Надо диаграмму Chart-Pie закрутить в другую сторону :)


2-1323698714
Студент1
2011-12-12 18:05
2012.04.01
DB-компонент с форматированным текстом