![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
Насколько я понимаю такие библиотеки загружаются по требованию с помошью LoadLibrary(Ex), далее используется GetProcAddress, но по моим наблюдениям GetProcAddress не вызывается, возможно я ошибаюсь. Как вообще работает этот механизм? Каким образом Dependency Walker (тулса из SDK) показывает информацию о Delay-Loaded DLLs, ведь они не записываются в импорты? Не сканирует же он весь файл на наличие какой либо сигнатуры...
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| sergejzr |
|
|||
![]() Un salsero Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 19 Всего: 360 |
А для чего они нужны?
Это сообщение отредактировал(а) sergej.z - 6.3.2004, 22:36 |
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
Я пытаюсь разобраться во встроенной в линкер VC поддержке, как ей пользоваться знаю. Не могу понять каким образом Dependency Walker выводит список этих DLL.
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
хм, понятно почему не вызывается GetProcAddress:
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
отбой, решение найдено:
"...\Microsoft Visual Studio .NET 2003\Vc7\include\delayhlp.cpp" -------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
| Fantasist |
|
|||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: 4 Всего: 41 |
А прокомментировать можно? А то с первого взгляда понятно не стало.
-------------------- Волны гасят ветер... |
|||
|
||||
| stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
Оказывается есть специальная таблица импорта для библиотек загружаемых по требованию. Что интересно и печально в документации по PE формату ни слова об этом (или я не там искал, может версия у меня древняя). Так вот в delayimp.h и delayhlp.cpp как раз таки можно нарыть описания структур и понять методику работы. В MSDN отрывочная информация имеется, при желании разобраться можно.
-------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |