Как узнать адрес сегмента данных ?

Тема в разделе "WASM.BEGINNERS", создана пользователем Daiver, 13 сен 2007.

  1. Daiver

    Daiver New Member

    Публикаций:
    0
    Регистрация:
    15 янв 2005
    Сообщения:
    17
    Адрес:
    Россия
    Здравствуйте.

    Есть моя библиотека, она загружает другую библиотеку.
    Та загружает делает GetModuleHandle на samsrv.dll
    и вынимает оттуда адреса функций и кладет себе в сегмент данных.
    После уже у себя прыгает по адресу одной из функций в samsrv.dll

    Хочется чтобы прагала ко мне в мою библиотеку.

    Соответсвенно хочу узнать адрес начала сегмента данных и его размер.
    Выполнить поиск по адресу функции и найдя заменить на свой.

    Подскажите куда копать. Спасибо.
     
  2. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    может ты имеешь ввиду секцию данных?
    тогда описание PE-формата в руки.
     
  3. Daiver

    Daiver New Member

    Публикаций:
    0
    Регистрация:
    15 янв 2005
    Сообщения:
    17
    Адрес:
    Россия
    Да, секцию конечно.

    Верно ли я понимаю, что я могу взять HMODULE который вернула LoadLibrary,
    добавить смещение секции полученное из заголовка PE и получу линейный
    адрес в памяти начала секции ?
     
  4. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
  5. Daiver

    Daiver New Member

    Публикаций:
    0
    Регистрация:
    15 янв 2005
    Сообщения:
    17
    Адрес:
    Россия
    Спасибо.