eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: UniSoft (+1 невидимый пользователь)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Вопросы новичков —› проблема с GetModuleHandle
Посл.ответ Сообщение

Ранг: 42.3 (посетитель)
Статус: Участник

Создано: 24 апреля 2018 22:27 New!
Цитата · Личное сообщение · #1

подскажите пожалуйста с такой проблемой
часто использую dll (написанную на Delphi) для подмены кода dotNet приложений.
вкратце смысл dll это подмена getJit функции на свою, где для нужного метода меняется ilcode перед его компиляцией
в 95% случаях все отлично, но в 5% dll не отрабатывает
нашел проблемную строку кода - GetModuleHandle('clrjit.dll');
возвращает 0, код ошибки - 126-The specified module could not be found
смотрю через Olly - dll загружен
пробовал GetModuleHandleW, GetModuleHandleA - не помогает.
закономерности от ОС не нашел. бывает и на win7 и win10 (на последней чаще), разрядность тоже не влияет
куда копать?

Ранг: 117.2 (ветеран)
Статус: Участник

Создано: 24 апреля 2018 22:36 New!
Цитата · Личное сообщение · #2

Значит в момент вызова GetModuleHandle() она не была подгружена. Используй:
Code:
  1. HMODULE module;
  2.  
  3. module = GetModuleHandle (...);
  4. if (!module)
  5. {
  6.     module = LoadLibrary (...);
  7.     
  8.     if (!module)
  9.     {
  10.         // error
  11.     }
  12. }

Ранг: 42.3 (посетитель)
Статус: Участник

Создано: 24 апреля 2018 22:43 New!
Цитата · Личное сообщение · #3

rmn
у меня используется хук на kernel32.dll'-'LoadLibraryW'. каждый раз когда вызывается LoadLibraryW, проверяется GetModuleHandle('clrjit.dll');


Ранг: 646.0 (!)
Статус: Участник
ALIEN Hack Team

Создано: 24 апреля 2018 23:30 New!
Цитата · Личное сообщение · #4

zds
Всегда делайте LoadLibrary("clrjit.dll") явно, потом ставьте все хуки.

Ранг: 271.6 (наставник)
Статус: Модератор
CrackLab

Создано: 25 апреля 2018 09:00 New!
Цитата · Личное сообщение · #5

zds пишет:
смотрю через Olly - dll загружен

zds пишет:
у меня используется хук на kernel32.dll'-'LoadLibraryW'

есть еще Ex, т.ч. хукай сразу LdrLoadDll, либо как выше посоветовали


Ранг: 264.9 (наставник)
Статус: Участник

Создано: 28 апреля 2018 02:14 New!
Цитата · Личное сообщение · #6

zds

>возвращает 0, код ошибки - 126-The specified module could not be found

Это не ошибка и не её код. Это вообще ничто, вы не способны нормально описать проблему. Используйте поиск.


Ранг: 574.3 (!)
Статус: Модератор
Research & Development

Создано: 28 апреля 2018 13:10 New!
Цитата · Личное сообщение · #7

difexacaw пишет:
Это не ошибка и не её код

Скорее всего ТС получает код ошибки через GetLastError, так что всё норм.
 eXeL@B —› Вопросы новичков —› проблема с GetModuleHandle

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS