Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Trace Into


faiwer ©   (2009-09-22 16:54:00) 

После установки очередной партии "вкусных" компонентов, очередной раз столкнулся с проблемой что трассировка_внутрь залазиет в коды этих компонент и этим сильно *censored* мозг. можно ли этого как нибудь избежать? я их как то не правильно устанавливаю?

Проблема на CodeGear 2009, но в D7 раньше было точно так же... просто сейчас взялся писать более менее большую вещь и "накипело" )

P.S.>поиск юзал :D


Сергей М.   (2009-09-23 12:24:00) [1]


> обычные vcl компоненты такой проблемой не страдают


Пересобери их с опцией использования отл.инф-ции, помести их DCU's в путь по умолчанию для Debug DCU's, укажи где находятся соотв.исходники - сразу "застрадают" как "необычные".


faiwer   (2009-09-23 12:15:00) [2]

то есть отладчик научить не пытаться ей пользоваться нельзя? или можно? ведь обычные vcl компоненты такой проблемой не страдают... работают себе втихоря и не мешают, и даже разрешают смотреть свой код :D


Сергей М.   (2009-09-23 12:08:00) [3]


> faiwer ©   (23.09.09 11:57) [15]


Не нравится - не ешь)

А суть остается сутью - отладчик пытается воспользоваться отладочной инф-цией, содержащейся в dcu.


faiwer   (2009-09-23 11:57:00) [4]

Сергей М., я не понимаю к чему эта демагогия. Ведь есть нормальный способ установки или настройки пакета, который позволяет избежать всех этих недоразумений и сделать всё по уму. Я не знаю этого метода, я спрашиваю об этом форумчан... А вы как обычно разводите никому не нужную демагогию...


Сергей М.   (2009-09-23 11:30:00) [5]


> поставить во всех вероятностных событиях\методах брейкпоинты


Для программиста, понимающего где и что в его собственномкоде должно происходить (но по каким-то причинам не происходит или происходит не ожидаемым образом - на то и отладка), этого вполне достаточно.


faiwer   (2009-09-23 11:24:00) [6]

Сергей М.
во первых это лишний гемморой. а во вторых что делать после
procedure aaa;
begin
..
=> end;

если транслятор на этой строчке, мне нужно определить куда программа пойдёт дальше (из моих продедур, допустим в процедуре был вызван метод Button1Click(self), значит компилятор после выполнения этой продедуры должен перейти именно туда), а он идёт в какой нибудь перехват события других компонент... просто дико не удобно. и тут хоть F8 жми хоть F7... спасёт только F9, но тогда я просто не прослежу цепочку... ещё как вариант поставить во всех вероятностных событиях\методах брейкпоинты... но это уже совсем не по уму

и кстати с каких это пор метод "биться головой о стену" среди программистов стал правильным? это я про "Дави F8 и будет счастье)" :D


Сергей М.   (2009-09-23 10:16:00) [7]


> faiwer ©   (23.09.09 10:12) [11]


А зачем вообще давить F7, если ты видишь, что очередной трассируемый оператор есть вызов метода заведомо не интересующего тебя объекта ?

Дави F8 и будет счастье)


faiwer   (2009-09-23 10:12:00) [8]

Германн, ну другие же компоненты не мешают кодить... особенно если я делаю trace into или  после какой нибудь продецуры... и Pas файлы при етом этих компонент доступны для просмотра (я часто через Ctrl влажу в нужные мне компоненты чтобы понять как с ними лучше работать). а тут я когда чтонибудь трасирую все перехваты сообщений, каждый маломальский метод грузится в CPU...


Германн   (2009-09-23 02:42:00) [9]


> faiwer ©   (23.09.09 02:12) [9]
>
> не против всех компонент помогло. вот против фиб-а не помогло.
>
> http://i009.radikal.ru/0909/ce/25a9c0a7fc52.jpg:(
> выводит енто, и далее уже в CPU окошке трейсит гад :D
>

А разве могло помочь? Ты же запросил Trace Into ну и получил его.


faiwer   (2009-09-23 02:12:00) [10]

не против всех компонент помогло. вот против фиб-а не помогло.
http://i009.radikal.ru/0909/ce/25a9c0a7fc52.jpg:(
выводит енто, и далее уже в CPU окошке трейсит гад :D


MonoLife   (2009-09-22 18:56:00) [11]


> Сначала скомпилировать, а затем переместить.

А, ну да, оставить тока dcu.. Понятно..


Германн   (2009-09-22 18:42:00) [12]


> MonoLife ©   (22.09.09 18:38) [6]
>
>

Сначала скомпилировать, а затем переместить.


MonoLife   (2009-09-22 18:38:00) [13]


> Германн ©   (22.09.09 17:54) [4]

Мож я чего не понял, но как правило, pas файлы "вкусных" компонентов и так лежат в других каталогах, по крайней мере, у меня. Чтобы проект скомпилился, в delphi нужно указать в Library к ним путь. При этом, при трассировке все равно "полезет" в исходник этих модулей.. или все не так?


faiwer   (2009-09-22 18:27:00) [14]

Германн, ty! Сработало )


Германн   (2009-09-22 17:54:00) [15]

Достаточно перенести pas файлы этих компонент в другой каталог.


Сергей М.   (2009-09-22 17:32:00) [16]

Сними крыжики в групбоксе Debugging - хуже не будет


Faiwer   (2009-09-22 17:30:00) [17]

Сергей М., спс. А какие конкретно опции? тут их выше крыши, попытался сам разобраться что какая делать, но больше запутался чем разобрался. сложная терминология. попробовал просто отрубить всю группу отладки, безтолку...
_ http://pics.kz/s1/7e/bf/a3/96/7ebfa3966e4c87a92e8be73f9b45f96c.jpg


Сергей М.   (2009-09-22 17:04:00) [18]

Компилить проект "вкусного" пакета следует как минимум с выключенными отладочными опциями.


Наверх

Титульная страница Поиск, карта сайта Написать письмо