VC:鼠标钩子函数

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

#include <windows.h>

HHOOK g_hMouse=NULL;

LRESULT CALLBACK MouseProc(

  int nCode,      // hook code

  WPARAM wParam,  // message identifier

  LPARAM lParam   // mouse coordinates

)

{

       return 1;

}

void SetHook()

{

       g_hMouse=SetWindowsHookEx(WH_MOUSE,MouseProc,GetModuleHandle("MouseHook"),0);

}

 

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

void SetHook();

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

内容如下:

LIBRARY "MouseHook"

 

EXPORTS

SetHook;//不带括号

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、编译、连接、运行

posted @ 2013-03-02 23:30  慧由心生  阅读(559)  评论(0编辑  收藏  举报