社区
API
帖子详情
如何实现对键盘输入的拦截?
JLBB102
2007-02-10 10:13:47
求助:我在做一个程序,目的是在后台实现对键盘输入的字符进行拦截,比如说在一个应用程序中的一个文本框中我输入一行数字,然后由应用程序生成一个文本文件,要求是在生成文件前我要先对这个数字进行一下判别,即将此数字发送到server进行判别,如果是我要,留下来发送给应用程序生成报告,如果不是则不给应用程序.我的想法就是在输入文本框前就进行拦截,在输入文本框后拦截会更麻烦.望有哪位高手给予指点?不甚感激.
...全文
734
9
打赏
收藏
如何实现对键盘输入的拦截?
求助:我在做一个程序,目的是在后台实现对键盘输入的字符进行拦截,比如说在一个应用程序中的一个文本框中我输入一行数字,然后由应用程序生成一个文本文件,要求是在生成文件前我要先对这个数字进行一下判别,即将此数字发送到server进行判别,如果是我要,留下来发送给应用程序生成报告,如果不是则不给应用程序.我的想法就是在输入文本框前就进行拦截,在输入文本框后拦截会更麻烦.望有哪位高手给予指点?不甚感激.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
luxu365
2007-02-16
打赏
举报
回复
这个我影镜说得很清楚了,关键的思路和API都有了,你应该去下载一个API大全,察看Findwindows()、FindwindowsExA()、Sendmessage()、keybd_event()、CallNextHookEx()、GetKeyboardLayout等API函数的具体使用方法和功能,源代码还是自己写吧,自己研究出来的还是比较好的,我只是提供一个思路而已。另外应用程序的句柄是在程序启动时由操作系统随机分配的,不是固定的,所以要用到上列函数中的几个获得这个句柄,关于键盘HOOK的问题你可以查看我回答的另外一个帖子。另外记得给分^^
http://community.csdn.net/Expert/TopicView.asp?id=5355794
JLBB102
2007-02-16
打赏
举报
回复
luxu365说的比较清楚,有没有更详细一点的,最好有源码,小的是个初学者,在此谢谢luxu365的回复!
如luxu365所说,那个应用程序窗口的句柄应该是一成不变的吧,不会随机变化吧?想获取一个窗口句柄可能比较简单,看到网上有好多相关资料,如果我想获取那个别人做的应用程序的文本框的句柄应该怎么获得啊,有谁知道能告诉我?我给追加分!感激不尽
luxu365
2007-02-14
打赏
举报
回复
你这个问题说起来简单,但有很多问题你没有考虑,首先你要用findwindows()等API函数获得该应用程序的句柄,然后获取该文本框的句柄,现在你有两个选择处理该问题,第一是用API获知该文本框是不是获得了输入焦点,如果获得了输入焦点则用sendmessage() API返回该文本框内容然后判断,同时封锁该软件的其他部件不能获得焦点(具体不清楚你何时生成文件,我假设你输入完数字后按一个回车表示输入完成),当允许生成,发送一个回车消息,不行继续等待。第二种方法是,建立全局键盘HOOK,首先确认输入框获得焦点,然后开始记录所有键盘事件,当检测到回车键则先吃掉该消息,返回截取信息作分析,若符合发送回车消息,不符合继续等待并记录。
JLBB102
2007-02-13
打赏
举报
回复
zcsor(偶业余的斗胆写点blog)~~~~~~~~~~~~
这位大虾正说清楚了吾意,被拦截的那个程序关键不是我写的,是我写的就不用拦截这么麻烦了,不知道后面的哪位如果能够看到回贴,麻烦再说详细点,我用的是VB,不是C++哦,主要就是对一个应用程序进行拦截后再过滤输入号码,就是这么简单,可是偶不会,请教各位大虾了!
清晨曦月
2007-02-11
打赏
举报
回复
被拦截的那个程序是你写的?。。。那还用什么HOOK啊。。。。直接处理即可。。如果不是也可以不用HOOK,但是相对麻烦点,,,,你去网上找找KEYHOOK.DLL的代码,但是是C++的还得改,偶不会。。。。
其实不HOOK也成,得到键盘输入,然后发送给输入框指定的消息来改变它的文本实现过滤即可
JLBB102
2007-02-11
打赏
举报
回复
太晚了,明晚继续等!!!!!!!!!
JLBB102
2007-02-11
打赏
举报
回复
我估计也要用键盘钩子,但是要在基于文本框输入的应用程序前拦截键盘输入,并判断,用钩子我不怎么会用,能否给出相关源码?听说好想要用到什么buffer,望高手指点!
cangwu_lee
2007-02-10
打赏
举报
回复
单个字母/数字,通过 键盘的事件,简单很多。
zhejiong
2007-02-10
打赏
举报
回复
用键盘钩子hook
Qt
实现
全局钩子
拦截
鼠标键盘消息修改消息
Qt
实现
全局钩子,
拦截
鼠标键盘消息,修改消息,在Qt 4.86上编译通过,适合学习,分享快乐,谢谢。
基于WPF开发的钩子函数,
实现
了勾取键盘所有输入,同时
实现
了对指定案件的屏蔽或替换。
1、
实现
屏蔽
键盘输入
2、抓取键盘上任意输入内容 3、替换
键盘输入
内容 4、保存到本地
C# 键盘鼠标全局钩子(
拦截
键盘鼠标所有操作)全局HOOK
C#
实现
键盘鼠标全局钩子 VS2013,可编译运行,带DEMO 可全局
拦截
鼠标单击/双击/滚动事件 可全局
拦截
键盘按键事件 可锁定键盘鼠标输入,比如锁屏! 该代码无法屏蔽Ctrl +alt +delete 需要
实现
所有
拦截
,请参考相关C++
实现
拦截
中文输法 并修改中文输入法 钩子 DLL 源码
全局钩子 中文 输入法
拦截
DLL DLL注入、输入法与键盘HOOK
c++ hook
实现
屏蔽键盘win,fn,右键按键
vs2013 c++ hook
实现
屏蔽键盘win,fn,右键按键
API
1,485
社区成员
23,281
社区内容
发帖
与我相关
我的任务
API
VB API
复制链接
扫一扫
分享
社区描述
VB API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章