![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Добрый день! Кто может подсказать, почему, когда я подгружаю стороннюю длл написанную на с++ и получаю полный список экспорта этой длл, я вижу не функцию, к примеру, _Activate, а нечто вроде ?@@_Activate...(дословно не скажу, всё дома осталось) и ещё много других символов. Я знаю только, что это определяется при компиляции длл, но с какой целью? И как сконвертировать такое имя функции к нормальному виду? Укажите, пожалуйста, где прочитать. И если найдётся кусок кода для изучения, буду премного благодарен. Кстати, тот же PE Explorer показал не только нормальные имена функций, но и их прототипы. Умеет же как-то.
Задача - найти в длл несколько функций с определёнными именами и получить их RV-адреса. 1. Подгружаю длл и получаю список экспорта (за основу взял великолепный код от Rouse_) 2. Заношу все получаемые функции в список строк 3. В списке ищу соответствие. 4. Если соответствие найдено - получаю адрес вызовом GetProcAddress П.3 валится из-за несоответствия имён что у меня и что нашла процедура. Заранее спасибо за любую помощь! |