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

Вниз

отладка DLL   Найти похожие ветки 

 
RockStorm ©   (2005-09-23 10:54) [0]

Суть в том, что надо отдебагить dll-ку (с установкой breakpoints и т.д.). Но дебаггер не откликается на брейкпоинты.
В некоторых описаниях и книгах по делфи этому уделено как-то мало внимания: просто сказано, что нужно указать host process. Я убедился, что хост процесс работает именно с этой откомпилированной длл-кой. Однако, всё равно не брейкпоинты не активизируются. Может, какие-то настройки надо установить где-то?


 
umbra ©   (2005-09-23 10:59) [1]

а в настройках компилятора написано, что отладочную информацию надо при компиляции создавать?


 
RockStorm ©   (2005-09-23 11:13) [2]

в Project Options, закладка Compiler, рамка Debug стоят все галочки (кроме debug DCU"s, впрочем я её тоже на всякий пробовал ставить), в том числе и Debug information


 
umbra ©   (2005-09-23 11:21) [3]

а там же в оптимизации естьгалочки? если есть - убери


 
isasa ©   (2005-09-23 11:26) [4]

в Project Options, закладка Linker
Include remote debug symbols=ON
В DLL и проекте. Rebuild обоим.


 
umbra ©   (2005-09-23 11:39) [5]

Вообще, чтобы отлаживать DLL в меню Run окрыть Parameters и там указать прогу, которая работает с этой DLL. Это и есть хост процесс. Делфи его запустит  в начале сеанса отладки


 
isasa ©   (2005-09-23 11:43) [6]

>чтобы отлаживать DLL в меню Run окрыть Parameters и там указать прогу, которая работает с этой DLL.
Это что-бы запускать отладку из проекта DLL. Для отладки F7(пошаговый проход) см. [4].


 
RockStorm ©   (2005-09-23 11:50) [7]

>Вообще, чтобы отлаживать DLL в меню Run окрыть Parameters и там указать >прогу, которая работает с этой DLL. Это и есть хост процесс. Делфи его >запустит  в начале сеанса отладки
Я это делал, о чём написал в самом первом сообщении:)

>а там же в оптимизации естьгалочки? если есть - убери
не помогает

>в Project Options, закладка Linker
>Include remote debug symbols=ON
>В DLL и проекте. Rebuild обоим.
тоже не помогло...


 
Digitman ©   (2005-09-23 12:05) [8]

View -> Debug Windows .. -> Modules .. -> Reload Symbol Table ..


 
evvcom ©   (2005-09-23 12:07) [9]

1. После Ctrl+F9 появляются синие точки слева от кода?
2. View > Debug Windows > Event Log. В списке найди свою dll. Что там "No Debug Info" или что другое?
3. Там же (Event Log) посмотри Base Address. Попробуй его записать в Project Options > Linker > Image Base. Для Delphi 5 & WinXP это обязательно, на D6 я не работал. Проверь опять пункт 2.


 
RockStorm ©   (2005-09-23 12:20) [10]

спасибо двум последним ораторам:) как-то поманипулировав всем этим получилось:)


 
Форумщик   (2005-09-23 13:13) [11]


> RockStorm ©   (23.09.05 10:54)

В дополнении к указанию host process иногда необходимо удалять копию данной длл из каталога, в котором находиться этот host process.


 
evvcom ©   (2005-09-23 13:49) [12]


> Форумщик   (23.09.05 13:13) [11]

Не обязательно, если туда линкер положит твою dll. Главное условие, чтобы host process загрузил именно твою dll.



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

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

Наверх




Память: 0.49 MB
Время: 0.05 c
14-1126764141
Vlad Oshin
2005-09-15 10:02
2005.10.16
Пара песен


14-1127743688
oldman
2005-09-26 18:08
2005.10.16
Журнал про компьютерные игры...


2-1126287506
Олег Л
2005-09-09 21:38
2005.10.16
Программирование на низком уровне.


2-1127128160
Андрей гость
2005-09-19 15:09
2005.10.16
сложный запрос на выборку одинаковых записей


1-1127326492
Чайник
2005-09-21 22:14
2005.10.16
Проблема с отображением форм из DLL