• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Delphi中的钩子函数HOOK详解

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Delphi中的钩子函数--HOOK,即系统挂钩捕捉键盘操作实例

   在WINDOWS系统下,应用程序常常要截获其他程序的消息,并加以处理(例如跟踪键盘或鼠标的按键状况等)。
   现在,我们假设在前台进行正常操作,在后台利用HOOK程序为系统安装一个键盘挂钩,当有按键操作时,
系统发给键盘挂钩对应的消息,而这些消息被HOOK程序截获,并加以相应的处理,这样就可以监视键盘的使用状况了。
一.实现方法
   DELPHI提供了强大的可视化集成开发环境,它使得在Windows下的应用程序开发变得更加广泛,因此我们将用DELPHI编写一个动态链接库,然后在主程序中加以调用以实现系统挂钩的设置。具体步骤如下:
   ① 用DELPHI创建一个使用键盘挂钩的动态链接库HK.DLL
   ② 用DELPHI编写一个使用上述DLL的可执行文件HOOK.EXE
二.实现步骤
1.创建动态链接库
* 选择FILE菜单中的NEW选项,选择DLL产生一个新的模板,保存为HK.DPR

//* 将程序编译后生成一个名为HK.DLL的动态链接库文件并存入“c:/”目录下。

2 .创建调用DLL的EXE程序HOOK.EXE
//* 选择FILE菜单中的NEW选项,在New Items窗口中,选择Application选项。在窗体Form中,加入两个按键,
//一个定义为挂钩,另一个定义为解脱,同时加入一个文本框以提示挂钩的设置状况。将Unit1存为“hk.pas”,其相应的代码如下:

//* 选取Views菜单中的Project Source,将Project1存为“hook.dpr”,其代码如下:

//* 编译生成HOOK.EXE 程序并存入“c:/”目录下。预先用“记事本”在“c:/”目录下建立CODE.TXT文件,
//运行HOOK程序并单击“挂钩”键,文本框提示“设置系统挂钩”,这时启动写字板等应用程序,所键入的字
//母和数字将被记录在CODE.TXT文件中。
//单击“解脱”键,文本框显示“挂钩解脱”,程序将停止对键盘的捕获。

源代码文件下载


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#调用Delphi的dll详解发布时间:2022-07-18
下一篇:
delphi读取excel两种方法发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap