一、钩子简介 1.创建钩子 HHOOK SetWindowsHookEx ( int idHook, //钩子类型,不同的钩子类型钩取不同的消息。 //WH_CBT - 只对窗口创建的消息感兴趣 HOOKPROC lpfn, //钩子处理函数 HINSTANCE hmod, //应用程序实例句柄,限定钩取的进程范围 DWORD dwThreadId //线程ID,限定钩取的线程范围 ); 2.钩子处理函数 LRESULT CALLBACK CBTProc ( int nCode, //钩子码,跟钩子类型相对应。 //HCBT_CREATEWND - 对应WH_CBT的钩子类型 WPARAM wParam, //刚刚创建成功的窗口句柄 LPARAM lParam ); 3.可以更改窗口处理函数和风格等等 LONG SetWindowLongPtr ( HWND hWnd, //窗口句柄 int nIndex, //要更改的窗口类型 //GWLP_WNDPROC - 指更改窗口的处理函数 LONG_PTR dwNewLong //新的窗口处理函数名(函数地址) ) 二、MFC窗口创建流程 1.代码书写 #include <afxwin.h> //定义自己的框架类 CMyFrameWnd ,派生自 CFrameWnd 类 class CMyFrameWnd :pu