📄 钩子2.cpp
字号:
#include "stdafx.h"
#include "hook.h"
#pragma data_seg("publicdata")
HHOOK hhook=NULL;
HINSTANCE pinstance=NULL;
#pragma data_seg()
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch(ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
pinstance = (HINSTANCE)hModule;
break;
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
UnhookWindowsHookEx(hhook);
break;
default:break;
}
return TRUE;
}
extern "C" bool WINAPI starthook(DWORD threadID)
{
//安装钩子
hhook=SetWindowsHookEx(WH_KEYBOARD,keybordproc,pinstance,threadID);
if(hhook!=NULL)
return true;
else
return false;
}
//---------------------------------回调-----------------------------
extern "C" LRESULT CALLBACK keybordproc(int code, WPARAM wparam,LPARAM lparam)
{
if (code<0)
return CallNextHookEx(hhook, code, wparam, lparam);
if(lparam & 0xC0000000)//键盘按下
{
if(wparam == 120)//F9
{
ULONG qqgroup15508958=0x0059A960;//打坐的call
_asm
{//其它功能call都可以这样实现
pushad
call qqgroup15508958
popad
}
}//end if F9
if(wparam == 121)//F10
{
DWORD qqg_roup15508958=0x0059A9A0;//停止打坐的call
_asm
{
pushad
call qqg_roup15508958
popad
}
}//end if F10
// MessageBox(NULL,"测试啊","ss",MB_OK);
}//end if //键盘按下
}
//------------卸载钩子--------------
extern "C" bool WINAPI stophook()
{
return UnhookWindowsHookEx(hhook);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -