Code:
HHOOK MouseHook; LRESULT CALLBACK MouseHookProc(int nCode, WPARAM wParam, LPARAM lParam) { if (nCode == HC_ACTION) { if(wParam == WM_RBUTTONDOWN || wParam == WM_LBUTTONDOWN) { MSLLHOOKSTRUCT *info=(MSLLHOOKSTRUCT*)lParam; if((info->flags & LLMHF_INJECTED) == LLMHF_INJECTED) { ExitProcess(-1); } } } return CallNextHookEx(MouseHook,nCode,wParam,lParam); } void AntiShotbotLogger() { HINSTANCE hInstance = GetModuleHandle(NULL); MouseHook = SetWindowsHookEx( WH_MOUSE_LL, MouseHookProc, hInstance, NULL ); MSG message; while (GetMessage(&message,NULL,0,0)) { TranslateMessage( &message ); DispatchMessage( &message ); } UnhookWindowsHookEx(MouseHook); return; }
Graças WizKid para apontar a função que eu tinha que usar.
Obrigado, Google para obter informações sobre WH_MOUSE_LL.
Para os usuários de código:
Criar antishotbot.cpp:
Code:
#include "StdAfx.h" HHOOK MouseHook; LRESULT CALLBACK MouseHookProc(int nCode, WPARAM wParam, LPARAM lParam) { if (nCode == HC_ACTION) { if(wParam == WM_RBUTTONDOWN || wParam == WM_LBUTTONDOWN) { MSLLHOOKSTRUCT *info=(MSLLHOOKSTRUCT*)lParam; if((info->flags & LLMHF_INJECTED) == LLMHF_INJECTED) { ExitProcess(-1); } } } return CallNextHookEx(MouseHook,nCode,wParam,lParam); } void AntiShotbotLogger() { HINSTANCE hInstance = GetModuleHandle(NULL); MouseHook = SetWindowsHookEx( WH_MOUSE_LL, MouseHookProc, hInstance, NULL ); MSG message; while (GetMessage(&message,NULL,0,0)) { TranslateMessage( &message ); DispatchMessage( &message ); } UnhookWindowsHookEx(MouseHook); return; }
Code:
//Don't put this inside a function, Do it like somewhere at the top (Like line 96 or so) void AntiShotbotLogger(); //Put this on line 197 under InitialLoading success CreateThread(0, 0, (LPTHREAD_START_ROUTINE)AntiShotbotLogger, 0, 0, 0);
For the DLL users:
Code:
#include <windows.h> HHOOK MouseHook; LRESULT CALLBACK MouseHookProc(int nCode, WPARAM wParam, LPARAM lParam) { if (nCode == HC_ACTION) { if(wParam == WM_RBUTTONDOWN || wParam == WM_LBUTTONDOWN) { MSLLHOOKSTRUCT *info=(MSLLHOOKSTRUCT*)lParam; if((info->flags & LLMHF_INJECTED) == LLMHF_INJECTED) { ExitProcess(-1); } } } return CallNextHookEx(MouseHook,nCode,wParam,lParam); } void AntiShotbotLogger() { HINSTANCE hInstance = GetModuleHandle(NULL); MouseHook = SetWindowsHookEx( WH_MOUSE_LL, MouseHookProc, hInstance, NULL ); MSG message; while (GetMessage(&message,NULL,0,0)) { TranslateMessage( &message ); DispatchMessage( &message ); }
0 comentários:
Postar um comentário