wd2h
驱动牛犊
驱动牛犊
  • 注册日期2001-03-28
  • 最后登录2018-05-30
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望230点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:2585回复:3

请教,为什么写字板保存的文档,用Filespy拦截不到IRP_NOCACHE的Write操作

楼主#
更多 发布于:2009-04-16 23:37
菜鸟请教,用FileSpy监控写字板保存文件时的IRP动作,却发现无法拦截到flags为 IRP_NOCACHE or IRP_PAGING_IO 的 IRP_MJ_WRITE,那么,文件数据又是如何从缓存中写入到硬盘中的呢,难道是由FASTIO完成的,或者是写字板和记事本一样,本身所用的机制特殊?

看很多前辈说的,在SfWrite中,都只需要拦截IRP_NOCACHE | IRP_PAGING_IO | IRP_SYNCHRONOUS_PAGING_IO即可。但按照对写字板的监测,我现在在filter driver根本无法拦截到所需要的写操作。

详情请见下列数据,只要是大于512字节的文件,存储时拦截到的数据如下(注意第24行的IRP_MJ_WRITE的flags,是没有拦截所设相关标志位的)

图片:1.JPG



请达人释疑,,,
wd2h
wd2h
驱动牛犊
驱动牛犊
  • 注册日期2001-03-28
  • 最后登录2018-05-30
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望230点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2009-04-16 23:38
而如果文件大小小于512字节,则可以监控到system最后会对该文件发出IRP_NOCACHE的写操作,见下图
 

图片:2.JPG



在这种情况下,filter driver就可以准确的拦截到写操作并对数据进行处理
wd2h
wd2h
驱动牛犊
驱动牛犊
  • 注册日期2001-03-28
  • 最后登录2018-05-30
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望230点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2009-04-21 02:38
晕倒,难道没有人有过此困扰吗?
wd2h
sjvollyball
驱动牛犊
驱动牛犊
  • 注册日期2007-11-22
  • 最后登录2015-06-12
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望72点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地板#
发布于:2010-03-24 21:59
你的问题和我一样,可是我也不会,我帮你顶一下啊
游客

返回顶部