![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| VladBD |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 19.11.2006 Репутация: 1 Всего: 5 |
Не выполняет код программы. Захожу и ставлю отладчик - тоже самое - даже точки брекпойнта не дает на операторы поставить. Что это такое? Как это лечить?
Присоединённый файл ( Кол-во скачиваний: 44 )
screen1.JPG 39,95 Kb |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
ставь брекпоинты не на конструкции языка вроде case, begin или function ... , а на реально выполняющиеся строки, вроде присвоения, ввода или вывода. в твоем случае бряк надо ставить либо на предыдущую строку, либо на следующую.
Добавлено @ 18:04 как же "не дает"? дает. только честно предупреждает: бряк никогда не сработает. такое же предупреждение получишь, поставив бряк в функции, которая нигде не вызывается. тебе это неудобно? пиши в блокноте |
|||
|
||||
| Bose |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1458 Регистрация: 5.3.2005 Где: Riga, Latvia Репутация: 23 Всего: 51 |
чтобы Breakpointы работали должны быть соблюдены следующие условия:
1) проект должен быть скомпилирован с отладочной информацией(Project->Options->Compiler->Debugging (все галочки включить) в Delphi 6) 2) Оптимизация должна быть выключена:(Project->Options->Compiler->Code Generation->галочка Optimization выключена, в Delphi 6) |
|||
|
||||
| VladBD |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 19.11.2006 Репутация: 1 Всего: 5 |
в том то и вопрос - почему не срабатывает... и не вызывается там функция (case 23 of) -> смотри внимательно что он должен выполнить... а не выполняется... ставлю бряк - тоже самое - пропускает этот оператор. даже строку pMASS:=-1; - не выполняет Добавлено @ 20:19 Bose, у меня Delphi 7 - если здесь это имеет значение. да и еще - комп перегружал - это не предлагать Это сообщение отредактировал(а) VladBD - 22.1.2007, 20:19 |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
VladBD, ты проверил опции, на которые указал Bose?
|
|||
|
||||
| VladBD |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 19.11.2006 Репутация: 1 Всего: 5 |
Я счас не на работе - но это все галочки для отладки, скомпилированный exe - все равно не выполняет операторы. Если больше мыслей нет - то подождем до завтра, попробую.
|
|||
|
||||
| skyboy |
|
||||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
у меня бряки работают даже если только одна галочка в группе отмечена: "Debug information". Думаю,её хватит... Добавлено @ 20:30 так при чём тут брейкпоинты?! если не выполняется код, значит логика такая. как думаешь, такой код должен выполняться:
|
||||
|
|||||
| VladBD |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 19.11.2006 Репутация: 1 Всего: 5 |
У меня же другая ситуация!!!
не заходит в case Это сообщение отредактировал(а) VladBD - 22.1.2007, 20:52 |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
я такое лечу всегда при помощи директивы
{$O-} поставленной в начале кода. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Alex |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4147 Регистрация: 25.3.2002 Где: Москва Репутация: 80 Всего: 162 |
ох, а можно увидеть весь код процедуры, а то тут уже такого по наговорили...
Это сообщение отредактировал(а) Alex - 22.1.2007, 22:12 -------------------- Написать можно все - главное четко представлять, что ты хочешь получить в конце. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
VladBD, отключи оптимизацию либо так:
либо так:
В чем проблема? разве странно, что при компиляции конструкции типа if false then .... ; case 1 of ... оптимизатором попросту выбрасываются? |
|||
|
||||
| VladBD |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 105 Регистрация: 19.11.2006 Репутация: 1 Всего: 5 |
может я что-то упустил - но когда принудительно стоит оператор, который явно должен выполнится. И что за такой оптимизатор, который посчитал что программе необязательно выполнять мои команды... ладно. полный код дам и опыты буду ставить завтра. кстати на рисунке слева синие точки, которые он ставит после компиляции - так вот он реально эти строки только и выполняет... Это сообщение отредактировал(а) VladBD - 22.1.2007, 22:54 |
|||
|
||||
| Alex |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4147 Регистрация: 25.3.2002 Где: Москва Репутация: 80 Всего: 162 |
-------------------- Написать можно все - главное четко представлять, что ты хочешь получить в конце. |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 4 Всего: 260 |
...или результат выполнения которых очевиден... например, a:= 1 + 5; надо создать две ячейки типа longint, просуммировать и записать в переменную? или, может, сэкономить несколько ячеек памяти, полдесятка тактов на каждый подход и написать a:= 6; ?! Так как? компилятор, по-твоему, должен быть тупой? вперед - отключай оптимизацию! только зачем ругать компилятор? |
|||
|
||||
| KEM |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 152 Регистрация: 28.1.2005 Репутация: нет Всего: 2 |
Помню была такая же проблема. Брэйки не срабатывали ни на одной операции. Непомню что поменял в настройках(вернул на место) + ребут и всё, так и не понял в чём была проблема.
--------------------
Мы растворяем сознание жизни, реальностью стал бешеный ритм... |
|||
|
||||
![]()
|
| Правила форума "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. |