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

Вниз

Debug dcu   Найти похожие ветки 

 
Maxim_____   (2004-09-27 20:04) [0]

Существует ли возможность при отладке step by step
исключить некоторые места? Мне например совершенно неинтересно как робатает в vcl-е асмовские места,
да и некоторые юниты целиком бы отключил.
И также и в своём коде мне хотелось бы отключить некоторые юниты и процедуры из рассмотрения при отладке step by step.


 
Cobalt ©   (2004-09-27 22:08) [1]

Может, просто расставить отладочные точки?


 
Maxim_____   (2004-09-27 23:31) [2]

расставить точки - это для того чтобы не пропустить место, на мне надо наоборот.


 
Юрий Зотов ©   (2004-09-28 00:37) [3]

Для кода VCL - сбросить флажок Use Debug DCUs. Альтернатива - не нажимать F7, где не надо, а нажимать F8.

Для своего кода - расставить директивы $D. Альтернатива та же.


 
Maxim_____   (2004-10-01 05:23) [4]

директива $D не даёт эффекта перепрыгивания.
сбросить флажок debug DCU неинтересно, потому что
отлавливаю runtima error, которая происходит при каждом выходе,
но непонятно почему.
в процессе выхода приходится по несколько минут(!)
скакать по VCL коду, пока дойдёшь до того места где возникает RTE
F8 - не вариант, потому что пропускает что хочет


 
Fedia   (2004-10-01 06:15) [5]

Честно говоря непонятно, зачем ты скачешь "несколько минут(!)
по VCL коду".
При отладке я использую следующим алгоритм.
1.Поставил точку останова после стабильно работающего кода.
2.Запустил программу.
3.Дождался достижения точки останова.
4.Дальше идешь по коду используя F8.
5.Если после очередного нажатия на F8 возникает ошибка, то варианта два:
- если эта строчка кода является входом в процедуру или функцию, то ставишь точку останова в начале этой функции или процедуры и переходишь к пункту 2;
- если нет, то ошибка, скорее всего именно в этой строчке кода.

Этот алгоритм помогает в большинстве случаев.


 
KSergey ©   (2004-10-01 06:30) [6]

> [4] Maxim_____   (01.10.04 05:23)

Искренне советую освоить Ctrl+Alt+S
Как ошибка - жмем - и о чудо! ;)

PS
Признаюсь, до недавнего времени как-то недооценивал, особенно для этих сучаев, теперь просто пищу ;)


 
Maxim_____   (2004-10-02 08:11) [7]

Fedia   (01.10.04 06:15) [5]

ошибка invalid pointer operation
возникает не сразу, а поле сотого прохода
этого проклятого места....

подскажите что сие значит?
ctrl-alt-s
в хелпе не нашёл.

причина ошибки у меня, видимо, зарыта где-то глубоко.
и я сделал её не сейчас, а намного раньше, но последствия
стали появляться только сейчас.
я делаю ежедневные бекапы, но терять день работы мне в тот момент не захотелось, а сейчас к тому состоянию вернуться = потерять много дней...


 
Семен Сорокин ©   (2004-10-02 12:19) [8]

ctrl-alt-s = View->Debug Windows->Call Stack
очень полезная штука, показывает стек вызовов процедур и функций на текущем моменте (останове) выполнения кода, соответственно при ошибке - покажет стек вызовов.
Для корректного отображения рекомендуется не снимать галочку Use Debug DCUs.



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

Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.04 c
3-1095328509
Medik
2004-09-16 13:55
2004.10.17
Добавление и удаление в Paradox


1-1096388114
pavelgr
2004-09-28 20:15
2004.10.17
работа с реестром


1-1096886393
Muchacho
2004-10-04 14:39
2004.10.17
Транслит


1-1096363145
msguns
2004-09-28 13:19
2004.10.17
Сообщение от одной форме другой


1-1096761465
Klopan
2004-10-03 03:57
2004.10.17
Поиск





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