Четвертый BORLAND С++ и его окружение

       

Доступ к DLL и исходному коду модулей


Хотя Turbo Debugger обеспечивает прозрачное пошаговое выполнение функций DLL, вам может потребоваться доступ к DLL до того,

как программа ее вызовет (например, в ней нужно установить точки

останова или задать отслеживаемые выражения). Для доступа к выполняемому модулю, отличному от текущего загруженного, откройте с

помощью команды View Modules (F3) диалоговое окно Load Module Source or DLL. Это диалоговое окно перечисляет все исходные модули,

содержащиеся в текущем загруженном выполняемом файле. Блок списка

DLL & Programs показывает все файлы .DLL и .EXE, загруженные Windows. (При работе с TDW в нем также выводятся все загруженные

файлы .DRV и .FON.)

Символом точки (.) отмечены DLL, которые могут загружаться в

Turbo Debugger (а также DLL с отладочной информацией и исходным

кодом). Звездочка (*) показывает, что модуль загружен отладчиком.

Так как ваши программы могут загружать DLL с помощью вызова LoadLibrary, в блоке списка могут показываться не все DLL.

Если вам нужен другой модуль исходного кода, подсветите нужный модуль в списке Source Module и используйте кнопку Load (или

дважды щелкните на имени модуля "мышью"). Turbo Debugger открывает окно Module и выводит исходный код данного модуля.

Для доступа к выполняемому файлу, отличному от текущего,

откройте диалоговое окно Load Module Source or DLL Symbols (F3),

подсветите в блоке списка нужный файл и выберите командную кнопку

Symbol Load. Turbo Debugger открывает окно Module с исходным кодом первого модуля выполняемого файла.

Чтобы добавить DLL к списку, откройте указанное диалоговое

окно, активизируйте поле ввода DLL Name и введите имя соответствующей DLL. Чтобы добавить DLL к списку, нажмите кнопку Add DLL.

При выполнении по шагам функции DLL отладчик автоматически

загружает таблицу идентификаторов и исходный код этой DLL. Чтобы

предотвратить это, откройте диалоговое окно Load Module Source or

DLL Symbols (F3), подсветите в списке нужную DLL, выберите кнопку

No и щелкните "мышью" на OK. Turbo Debugger будет выполнять вызовы DLL как одну команду.



Содержание раздела