HOOK函数应用(之键盘锁定)
其实网上谈钩子(HOOK)函数的原理、应用已经很多拉。我对HOOK理解也是略知一、二,只是想写几句,自娱自乐,于是写了:
目的:让键盘锁定一段时间,然后自动解锁。
原理:利用全局钩子函数(键盘钩子)
1 创建动态连接库,代码:
//*****************************
// 全局HOOK
// UnReal@2005-12-29
//*****************************
#include "stdafx.h"
#pragma data_seg("mydata")
HANDLE g_hand = NULL;
HINSTANCE g_hMod = NULL;
HHOOK g_hKeyHook = NULL;
#pragma data_seg() 
LRESULT CALLBACK KeyboardProc(int code,
WPARAM wParam,
LPARAM lParam)

BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved)

void test() //测试函数

void SetHook(HANDLE hand)

void UnSetHook()

2 创建调用程序,代码:
System32.cpp
3 将第一步生成的HookDll.dll 复制到装载dll的可执行文件目录,运行exe文件。
msdn上查查函数SetWindowsHookEx(int idHook, HOOKPROC lpfn, HINSTANCE hMod, DWORD dwThreadId);设置idHook可以
编写不同的钩子函数,有兴趣的朋友自己研究研究。
呵呵^-^ 上班时间,空了再写,再完善……



}
}
浙公网安备 33010602011771号