首页 > 代码库 > 钩子编程(HOOK) 安装进程内鼠标钩子
钩子编程(HOOK) 安装进程内鼠标钩子
作者 : 卿笃军
钩子函数: WINDOWS的钩子函数可以认为是WINDOWS的主要特性之一。利用它们,您可以捕捉您自己进程或其它进程发生的事件。通过“钩挂”,您可以给WINDOWS一个处理或过滤事件的回调函数,该函数也叫做“钩子函数”,当每次发生您感兴趣的事件时,WINDOWS都将调用该函数。
下面介绍如何安装一个进程内的鼠标钩子。
第一步:打开VC6.0,新建一个基于对话框的MFC应用程序。
第二步:将如下代码拷贝到BOOL CInnerHookDlg::OnInitDialog()上面的位置,(注意不是拷贝到OnInitDialog()里面)
HHOOK g_hMouse = NULL; //Hook LRESULT CALLBACK MouseProc(int nCode, WPARAM wParam, LPARAM lParam) { return 1; }
g_hMouse = SetWindowsHookEx(WH_MOUSE, MouseProc, NULL, GetCurrentThreadId());好了,钩子安装成功~~~
第四步:运行程序,你会发现,鼠标点击事件已经被屏蔽掉了~
注释:
SetWindowsHookEx()函数用来安装钩子。其中参数如下(其返回值是该钩子的句柄):
SetWindowsHookEx(
nt idHook, \\钩子类型
HOOKPROC lpfn, \\回调函数地址
HINSTANCE hMod, \\实例句柄
DWORD dwThreadId); \\线程ID
钩子子程是一个回调函数,形式如下:
LRESULT CALLBACK HookProc
(
int nCode,
WPARAM wParam,
LPARAM lParam
);
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。