博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VC:键盘钩子函数
阅读量:6839 次
发布时间:2019-06-26

本文共 853 字,大约阅读时间需要 2 分钟。

1、创建一个Win32的动态链接库工程,在C++源文件中编写代码如下:

#include <windows.h>

HHOOK g_hKeyboard=NULL;

 

LRESULT CALLBACK KeyboardProc(

  int code,       // hook code

  WPARAM wParam,  // virtual-key code

  LPARAM lParam   // keystroke-message information

)

{

       return 1;

}

 

 

 

void SetHook()

{

       g_hKeyboard=SetWindowsHookEx(WH_KEYBOARD,KeyboardProc,GetModuleHandle("KeyboardHook"),0);

}

2、添加头文件声明SetHook();

void SetHook();

3、添加一个模板定义文件(.def),并加载到工程。

内容如下:

; KeyboardHook.def : Declares the module parameters for the DLL.

 

LIBRARY      "KeyboardHook"

DESCRIPTION  'KeyboardHook Windows Dynamic Link Library'

 

EXPORTS

SetHook; Explicit exports can go here

4、编译、连接。

二、新建应用程序:使用DLL

1、将生成的DLL文件、Lib文件和test.h文件,复制到指定的目录下。并且在应用程序的.cpp文件中添加:#include "test.h"

2、隐式加载Win32 Dll文件。选择Project|Setting命令,在弹出的对话框中选择Link标签,在“Object/Library module”文本框中输入需要导入的库文件lib的文件名。注意lib的路径。

3、在OnInitDlg()函数中加入语句:

SetHook();

4、编译、连接、运行

转载地址:http://iawul.baihongyu.com/

你可能感兴趣的文章
T-SQL游标
查看>>
空气净化器
查看>>
java内存调试
查看>>
我的友情链接
查看>>
important的扯淡
查看>>
MySql 密码忘记了,不用重装
查看>>
Linux定时任务
查看>>
Eclipse安装SVN最新版插件
查看>>
Windows日志及其保护
查看>>
linux learning site
查看>>
学生成绩管理网站之——课程视频分享实现
查看>>
第拾壹章學習 Lisp 3rd Edition, Winston & Horn
查看>>
在RecyclerView的子布局中使用EditText在数据滚动后消失
查看>>
手动安装oracle软件 删软件
查看>>
快速排序
查看>>
20130410 现阶段的学习状况
查看>>
我的友情链接
查看>>
归纳整理--第2篇--QQ好友
查看>>
Nodejs学习
查看>>
十步优化SQL Server中的数据访问
查看>>