下面是一个键盘钩子的示例,例子完成的任务是记录键盘的击键信息,保存到一个文件中。
1)建立MFC扩展DLL,设置工程名称为:KeyHook
2)在工程中添加KeyHook.h文件,然后加入键盘钩子类:
class AFX_EXT_CLASS CKeyHook:public CObject
{
public:
CKeyHook();
~CKeyHook();
bool SetKeyHook();
bool UnSetKeyHook();
};
3)在KeyHook.cpp中添加如下黑体字部分的代码:
#include "stdafx.h"
#include
#include "KeyHook.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
LRESULT CALLBACK KeyHookProc(int nCode,WPARAM wParam,LPARAM lParam);
HHOOK hKeyHook;
HINSTANCE glHinstance;static AFX_EXTENSION_MODULE KeyHookDLL = { NULL, NULL };
extern "C" int APIENTRY
DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved)
{