在中可以利用SetWindowsHookEx来挂接过滤在挂接时必须指 出该挂接类型、入口地址以及是全局性还是局部性挂接函 数具体格式如下中国自学编程网www.zxbc.cn :
SetWindowsHookEx(iType,iProc,hInst,iCode) 其中iType为挂接类型键盘类型为WH_KEYBOARD,iProc为挂接地址hInst 为挂接链接库例子句柄iCode为监控代码-0表示全局性 如果挂接需要将消息传递给下个过滤则在该挂接返回前还需要调 用次CallNextHookEx当需要下载挂接时只要次 UnhookWindowsHookEx(iProc)即可实现 如果是全局性那么它必须放在个.DLL动态链接库中这时该方 法可以和其它普通.DLL样有 3种:
1.在DEF定义文件中直接用名或序号介绍说明: EXPORTS WEP @1 RESIDENTNAME InitHooksDll @2 InstallFilter @3 KeyboardProc @4 用序号介绍说明格式为:链接库名.名(如本例中介绍说明思路方法为KEYDLL.KeyboardProc)
2.在应用中利用直接: 首先在应用中利用LoadLibrary(LPSTR \"链接库名\")将动态链接库装入并取得 装载库模块句柄hInst,然后直接利用GetProcAddress(HINSTANCE hInst,LPSTR \"函 数过程名\")获取地址然后直接该地址即可结束前利用 FreeLibrary( )释放装入动态链接库即可
3.利用输入库.LIB思路方法 利用IMPLIB.EXE在建立动态链接库同时建立相应输入库.LIB然后直接在 项目文件中增加该输入库
最新评论