http://blog.csdn.net/jiangxinyu/article/details/5284079
2、创建钩子函数
创建新的钩子函数加入到钩子链中,一般在钩子程序初始化时使用.HHOOK SetWindowsHookEx( int idHook,HOOKPROC lpfn, INSTANCE hMod,DWORD dwThreadId)
返回值:
HHOOK -- 钩子句柄,需要保留,等不使用钩子时通过UnhookWindowsHookEx函数卸载钩子
参数说明:
idHook -- 钩子的拦截消息类型,选择钩子程序的拦截范围,具体值参考文章结尾的消息类型
lpfn -- 消息的回调函数地址,一般是填函数名
hMod -- 钩子函数所在的实例的句柄。对于线程钩子,该参数为NULL;对于系统钩子,该参数为钩子函数所在的DLL句柄。在dll中可通过AfxInitExtensionModule(MousehookDLL, hInstance)获得DLL句柄。
dwThreadId -- 钩子所监视的线程的线程号,可通过GetCurrentThreadId()获得线程号。对于全局钩子,该参数为NULL(或0)。