Сейчас на форуме: _MBK_, vsv1 (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Инициализация dll
Посл.ответ Сообщение

Ранг: 12.6 (новичок)
Активность: 0.010
Статус: Участник

Создано: 18 апреля 2007 11:46
· Личное сообщение · #1

Насколько я понимаю, после загрузки dll сначала выполняется код инициализации (судя по loaddll.exe). Проблема в том, что мне необходимо брякнуться на начале этой инициализации, причем не просто загрузить dll-ку в лоаддлл, а именно в контексте основного процесса, который её подключает. В debugging options есть такой пункт break on new modules, однако ольга брякается только после инициализации dll-ки Можно ли заставить ольку останавливаться на начале инициализации? P.S. загрузка библиотеки происходит при загрузке процесса.



Ранг: 74.4 (постоянный)
Активность: 0.050
Статус: Участник

Создано: 18 апреля 2007 12:51
· Личное сообщение · #2

ставь бряк в на лоадер длл



Ранг: 12.6 (новичок)
Активность: 0.010
Статус: Участник

Создано: 18 апреля 2007 13:24
· Личное сообщение · #3

А где он находится?




Ранг: 120.9 (ветеран), 5thx
Активность: 0.080
Статус: Участник
Programmer and reverser

Создано: 18 апреля 2007 14:08
· Личное сообщение · #4

1. Находишь смещение DllEntry.
2. Открываешь любу в Hex-редакторе.
3. По смещению DllEntry записываешь 0xCC, при этом записав куда-нить оригинальный байт.
4. Запускаешь прогу, которая грузит либу, в Ольке (в настройках исключений Оли должен стоять флаг INT3 breaks)
5. Когда отладчик остановится на загрузке либы, меняй 0xCC на оригинальное значение.
P.S. Все это сработает, если я правильно понял вопрос

-----
Уважайте других и пишите грамотно.




Ранг: 12.6 (новичок)
Активность: 0.010
Статус: Участник

Создано: 18 апреля 2007 16:38
· Личное сообщение · #5

Executioner
То, что нужно. Большое спасибо.


 eXeL@B —› Вопросы новичков —› Инициализация dll
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати