Функция-перехватчик C++C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Функция-перехватчик C++

Сообщение Anonymous »

Я учусь перехватывать функции, поэтому решил начать с mta и попытаться вывести что-нибудь на консоль, но при вызове функции в клиенте происходит сбой core.dll.
Вот код:

Код: Выделить всё

typedef void(__thiscall* prtMeHook)(void* ECX, const char* szText);
prtMeHook callMeHook = nullptr;
void __fastcall hkMeHook(void* ECX, void* EDX, const char* szText) {
callMeHook(ECX, "This work");
}

SigScan scan;
callMeHook = (prtMeHook)scan.FindPattern(xorstr_("core.dll"),
xorstr_("\x0A\x8B\x00\x00\x00\x00\x11\x8B\x00\x00\x00\x00\xB5\x44"),
xorstr_("xx????xx????xx"));
if (callMeHook != nullptr)
{
LogInFile(LOG_NAME, xorstr_("[LOG] Found address from signature to MeHook!\n"));
MH_RemoveHook(callMeHook);
MH_CreateHook(callMeHook, &hkMeHook, reinterpret_cast(&callMeHook));
MH_EnableHook(MH_ALL_HOOKS);
}
else LogInFile(LOG_NAME, xorstr_("[ERROR] Can`t find a sig for MeHook.\n"));
Это не весь код и я на 100 процентов уверен, что мой инжектор работает.
Я пробовал использовать разные подобные функции, но ничего не помогло .

Подробнее здесь: https://stackoverflow.com/questions/785 ... ction-hook
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»