首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
Windows11键盘i8042和kbdclass
2024-08-24
通过修改i8042prt端口驱动中类驱动Kbdclass的回调函数地址,达到过滤键盘操作的例子
同样也是寒江独钓的例子,但只给了思路,现贴出实现代码 原理是通过改变端口驱动中本该调用类驱动回调函数的地方下手 //替换分发函数 来实现过滤 #include <wdm.h> #include <ntddk.h> #include <Ntddkbd.h> #include <windef.h> // Kbdclass驱动的名字 #define KBD_DRIVER_NAME L"\\Driver\\Kbdclass" //ps2的端口驱动
4.5 HOOK分发函数
4.5 HOOK分发函数 本节开始深入的探讨键盘的过滤与反过滤.有趣的是,无论是过滤还是反过 滤,其原理都是进行过滤.取胜的关键在于:谁将第一个得到信息. 黑客可能会通过修改一个已经存在的驱动对象(比如前面的KbdClass)的分 发函数指针来实现过滤所有请求的目的.黑客将这些函数指针替换成自己的黑客 驱动中的函数,这样请求将被黑客的程序首先截获.然后通过调用原来被替换过 的旧的函数指针来让Windows的击键过程正常的运作下去. 4.5.1 获得类驱动对象 当然,首先要获得键盘类驱动对象,才能
[内核编程] 4.5 HOOK分发函数
4.5 HOOK分发函数 本节开始深入的探讨键盘的过滤与反过滤.有趣的是,无论是过滤还是反过 滤,其原理都是进行过滤.取胜的关键在于:谁将第一个得到信息. 黑客可能会通过修改一个已经存在的驱动对象(比如前面的KbdClass)的分 发函数指针来实现过滤所有请求的目的.黑客将这些函数指针替换成自己的黑客 驱动中的函数,这样请求将被黑客的程序首先截获.然后通过调用原来被替换过 的旧的函数指针来让Windows的击键过程正常的运作下去. 4.5.1 获得类驱动对象 当然,首先要获得键盘类驱动对象,才能
i8042 键盘控制器-------详细介绍
[转]http://shanzy.bokee.com/834368.html ps/2 键盘硬件概述 对于驱动来说,和键盘相关的最重要的硬件是两个芯片.一个是 intel 8042 芯片,位于主板上,CPU 通过 IO 端口直接和这个芯片通信,获得按键的扫描码或者发送各种键盘命令.另一个是 intel 8048 芯片或者其兼容芯片,位于键盘中,这个芯片主要作用是从键盘的硬件中得到被按的键所产生的扫描码,与 i8042 通信,控制键盘本身. 当键盘上有键被按下时,i8048 直接获得键盘硬件产生的
Linux 模拟 鼠标 键盘 事件
/************************************************************************ * Linux 模拟 鼠标 键盘 事件 * 说明: * 以前看到有些软件能够控制鼠标移动,键盘操作等功能,总想知道这些到底 * 是怎么做到的,好像是2年前也尝试去做这件事,但那时候对知识的匮乏直接导致 * 无法进行,早上突然想到这件事,于是又搜索了一下,鉴于目前经常接触Linux * 驱动,对这些东西的理解也就很容易. * * 2016-2-27 深
笔记本PS/2键盘无法使用,试下这个方法
用360清理了一下系统,再开机键盘就不灵了,鼠标却可以用. 打开设备管理器,看到PS/2标准键盘有个黄色的感叹号. 属性显示PS/2 标准键盘 Windows 无法加载这个硬件的设备驱动程序.驱动程序可能已损坏或不见了. (代码 39) 用驱动精灵也不行.如果出现这个问题,可以试试这个.我是完美解决了. 开始-运行 输入regedit定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-B
键盘过滤第一个例子ctrl2cap(4.1~4.4)汇总,测试
键盘过滤第一个例子ctrl2cap(4.1~4.4)汇总,测试 完整源代码 /// /// @file ctrl2cap.c /// @author wowocock /// @date 2009-1-27 /// #include <wdm.h> #include <ntddkbd.h> #include "ctrl2cap.h" typedef struct _C2P_DEV_EXT { // 这个结构的大小 ULONG NodeSize; // 过滤设备对
hook键盘驱动中的分发函数实现键盘输入数据的拦截
我自己在看<寒江独钓>这本书的时候,书中除了给出了利用过滤的方式来拦截键盘数据之外,也提到了另外一种方法,就是hook键盘分发函数,将它替换成我们自己的,然后再自己的分发函数中获取这个数据的方式,但是书中并没有明确给出代码,我结合书中所说的一些知识加上网上找到的相关资料,自己编写了相关代码,并且试验成功了,现在给出详细的方法和代码. 用这种方式时首先根据ObReferenceObjectByName函数来根据对应的驱动名称获取驱动的驱动对象指针.该函数是一个未导出函数,在使用时只需要先声明即可
WIN7下PS/2等键盘失灵无法使用的解决办法
WIN7下PS/2等键盘失灵无法使用的解决办法 装了win7,无意中一天开机,发现键盘不能用了.开始以为键盘坏了,重启看机,一看能进bios,各键正常.然后再重启,进系统,看设备管理器,发现键盘为黄色惊叹号.查属性,为无法初始化硬件驱动. 首先判断,驱动损坏.重新安装了驱动,重启,无效.手动指定安装,还是无效. 无耐去找解决方法.还真是不好弄. 现在把方法分享给大家: 运行注册表regedit, 1.定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\C
Vmware虚拟机不能使用键盘的解决方法
有个笔记本thinkpad T440要重装系统,但又怕前面的资料丢失,因此打算直接将整个物理机迁移到VCenter 6.5上去,比GHOST什么的方便多了,利用Vmware Convert工具直接在线虚拟化并迁移到VCenter,一是省去了虚拟化或镜像的存储空间问题,而是还能继续使用原来的这套系统,十分方便. 原来的物理机是个程序开发机器,大小软件上百个,各类配置特别多,整套系统磁盘空间500G,迁移和虚拟化5个小时就解决. 问题是虚拟化好了后,登录时没法输入密码进行登录,鼠标时可以用,唯独键盘
WinIo驱动级键盘模拟编程
转自:http://blog.sina.com.cn/s/blog_455d7a320100vr37.html 前天无聊,翻翻自己的兴趣项目文件夹,发现了这个放下很久的项目!那是大三时候的事了.当时是为了提高我魔兽三的按键速度,用了个叫移花接木的软件,把键盘的键位改了.的确是有所帮助,但这是共享软件,用40次就不能再用了除非注册.于是乎就有了做一个类似的软件出来,在网上搜索了一把发现WinIo模拟按键是最可靠的了,就决定向这方向钻进去了.哎...技术不够,看了很久的技术文章和代码也只是了解了一点
极域电子教室卸载或安装软件后windows7无法启用触摸板、键盘
我今天在win7上装了个极域电子教室,卸载后重启触摸板,键盘都不能用了?连口令都是用屏幕键盘来输入的.进去后看设备管理器,键盘和触摸板,前面都有黄色的告警,而且就是出现了鼠标代码为10的情况?不过吧鼠标插上能用,我尝试下载更新驱动但都无法启动触摸板,我觉得这不是驱动的问题,在网上许多都说着是驱动的问题,我以前没有装极域电子教室的时候好好的,卸载后一重启就不能用了.. 一般出现这种问题,可有是因为极域电子教室卸载的驱动配置导致主机正常系统驱动无法加载等情况 在网上搜索,从别人解决虚拟机.***和腾
windows开机后键盘失灵(非硬件原因)解决办法
今天来了,开机时突然发现输入密码时,键盘不管用了,试了一下键盘没问题,插口也没问题,能进入安全模式,很奇怪,昨天好好的今天却不能用了,找人倒腾了大半天也没搞出来,后来用PE盘消掉了密码,总算进入了系统,在设备管理里发现键盘驱动多了个黄色感叹号,初步判断驱动加载失败,重新安装也不行.后来想到可能昨天卸载软件时导致的,找了下解决方案,总算解决了,在此总结下,以备以后遇到类似问题. 1.打开注册表regedit,定位到HKEY_LOCAL_MACHINESYSTEMCurrentControl
Windows键盘驱动结构与消息机制--转
https://www.douban.com/note/318793892/ 本文主要介绍按键消息是如何传递到窗口并转化为具体的按键消息的. Windows系统是事件驱动的多任务系统,其中按键和鼠标是主要的事件.按键是由键盘驱动获得并转换,然后广播给各个窗口. 整个架构的核心是csrss.exe这个进程,对于“一般”的窗口,收到的消息都是由这个任务产生的.该任务负责用CreateFile方式打开键盘设备并读取信息,获得对应的键码并发送给特定的进程,csrss.exe的启动的输入线程为win32k
[内核编程] 键盘过滤第一个例子ctrl2cap(4.1~4.4)汇总,测试
键盘过滤第一个例子ctrl2cap(4.1~4.4)汇总,测试 完整源代码 /// /// @file ctrl2cap.c /// @author wowocock /// @date 2009-1-27 /// #include <wdm.h> #include <ntddkbd.h> #include "ctrl2cap.h" typedef struct _C2P_DEV_EXT { // 这个结构的大小 ULONG NodeSize; // 过滤设备对
Delphi下利用WinIo模拟鼠标键盘详解 有参考价值
https://blog.csdn.net/fgrass_163/article/details/6365296 Delphi下利用WinIo模拟鼠标键盘详解 2011年04月26日 21:03:00 阅读数:1815 前言 一日发现SendInput对某程序居然无效,无奈只好开始研究WinIo.上网查了很多资料,发现关于WinIo模拟鼠标键盘的资料很少,有的也只是支言片语讲的不是很详细,而且大部分都是关于模拟键盘的.自己写了一些程序研究一方,经历了无数次的键盘死锁.鼠标满屏乱飞.复位重启,总算
关于windows11的0x800f0950语言包安装失败
最近windows11的风头很热,作为爱折腾的人,当然要去搞一搞啦.搞好了以后我发现中文语言的拓展包是无法安装的,于是我找到了3个办法,当然如果想100%成功的话我建议直接跳到第三个,如果你不嫌累,指望1和2可以成功的话,那么你可以试试,万一就成功了呢.[狗头] # 安装windows11 > 最近Windows11的ISO镜像文件泄露了出来,本着爱折腾的性子,还是选择在不会大翻车的情况下第一时间上车了.之前微软就已经曝出自己不会在出新的系统.但是当时说出这句话的微软员工已经被辞退了.那么最近泄
HTML kbd键盘元素
1. 说明 kbd :即Keyboard Input Element(键盘输入元素).表示键盘按键的语义元素,常用于网页上对快捷键.按键说明的场景. 样式规格:内联样式. 为了在页面上突出显示,可以给kbd元素添加样式: kbd { -webkit-border-radius: 4px; -moz-border-radius: 4px; -o-border-radius: 4px; -khtml-border-radius: 4px; border-radius: 4px; border-sty
MVVM TextBox的键盘事件
MVVM下RichTextBox的键盘回车事件设置为发送,不是回车 xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" xmlns:mv="http://www.galasoft.ch/mvvmlight" xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions" <contr
android键盘
在应用的开发过程中有不少的情况下会用到自定义键盘,例如支付宝的支付密码的输入,以及类似的场景.android系统给开发者们提供了系统键盘,KeyboardView,其实并不复杂,只是有些开发者不知道罢了,在这里记录下,避免以后遗忘. 在布局文件中是这样写的: <android.inputmethodservice.KeyboardView android:id="@+id/jcd_keyboard_view" android:layout_width="fill_par
热门专题
jquery 滚轮禁用
python求两数之和
cmd markdow简明语法
chrome插件重启后失效
feign调用时使用@ModelAttribute
jmap dump 文件格式
zxing 输出中文
nodejs 下载mp3文件无法播放
xvworks环境变量
fillStyle没效果="rgb()
background 填满
set autocommit=0什么意思
jprofiler 监控docker部署的服务
32位单精度浮点数表示的最小正数
AB v32安装失败
安卓如何实现无桌面开机启动
macos 切换 python2
改名后 Cannot resolve symbol R
webuploader事件
scrollView 上滑滑入,下拉滑出 联动效果 iOS