hanbsd
驱动牛犊
驱动牛犊
  • 注册日期2009-06-30
  • 最后登录2010-06-24
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望51点
  • 贡献值1点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1793回复:2

鼠标过滤器驱动程序安装问题请达人指点

楼主#
更多 发布于:2009-10-28 10:43
本人最近写了一个鼠标过滤器驱动程序,功能是将特定的鼠标数据从应用程序发往过滤器模拟鼠标点击。
思路如下,在mouclass上挂载过滤器moufilter,拦截irp_read,一旦在mousefilter里接收到我用应用程序下发的模拟数据,就调用iocomplete完成普通应用发给鼠标设备的irp_read,否则将irp传给mousefilter,由下层驱动来处理读操作,以此来达到模拟点击的目的。

moufilter的加载过程是这样的:首先系统为moufilter生成pdo,这个pdo应该是mouclass的实例,接着系统调用adddevice,在adddevice里,首先创建一个fido,再调用IoAttachDeviceToDeviceStack将fido附加到pdo堆栈顶部,就是在fdo上挂载了一个filter对象,于是呼fido就可以拦截到所有发往pdo的irp了。

小弟不明白该如何安装这个mousefilter,
inf文件加载class filter的规则是怎样的?
系统是怎么通过inf来知道filter是加载到mouclass.sys上的呢,就是如何将mouclass的pdo传给moufilter的?
inf文件该怎么写?

呵呵,不知道我的思路有没有什么问题,恳请达人指点。
WgdeGG
驱动牛犊
驱动牛犊
  • 注册日期2009-02-14
  • 最后登录2009-12-29
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望131点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2009-10-29 15:42
《Windows驱动开发技术详解》的第3章有加载驱动方面的内容。不知道对你是否有帮助?
 这个驱动是你自己写的吗?不知道你是怎么做到不加载这个驱动来测试你写的驱动的?
TonyZane
驱动牛犊
驱动牛犊
  • 注册日期2009-02-18
  • 最后登录2012-09-17
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望151点
  • 贡献值2点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2009-11-27 16:27
ddk里有mousefilter的例子
Tks.
游客

返回顶部