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

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.004 c
2-1323940774
igorium
2011-12-15 13:19
2012.04.01
Надо диаграмму Chart-Pie закрутить в другую сторону :)


2-1323778788
bibika
2011-12-13 16:19
2012.04.01
Ошибка при работе с компонентом с TWebBrowser и подключением файл


2-1323787418
tj.nelson
2011-12-13 18:43
2012.04.01
Помогите разобраться с реестром windows 7


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


1-1290374524
IVP
2010-11-22 00:22
2012.04.01
Delphi и Word





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский