dionysus77
驱动小牛
驱动小牛
  • 注册日期2006-11-15
  • 最后登录2011-12-18
  • 粉丝0
  • 关注0
  • 积分27分
  • 威望392点
  • 贡献值0点
  • 好评度177点
  • 原创分0分
  • 专家分0分
阅读:676回复:1

这个问题太奇怪了!!!!!!!!!!!!!!!

楼主#
更多 发布于:2007-11-08 22:02
我用minifilter做透明加密,打算加文件头或文件尾。调试代码时,我用记事本打开txt,在文件开头随便输入内容,跟踪到write函数中,发现偏移量和长度都正确,只是buffer中前512位为空,后面才是我在记事本中输入的内容。之前我只做了在文件打开时加头或尾的读写。无论加文件头还是文件尾,也无论我是否处理set和query文件长度的IRP。此问题都存在,即buffer中空出了文件首(或尾)长度的空位(全为00),随后才是实际写入的内容。
PS:文件打开时添加标志的写请求不存在此问题,只有在记事本中写内容时才有上述问题。
大侠们救命啊!!!
dionysus77
驱动小牛
驱动小牛
  • 注册日期2006-11-15
  • 最后登录2011-12-18
  • 粉丝0
  • 关注0
  • 积分27分
  • 威望392点
  • 贡献值0点
  • 好评度177点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-11-08 23:50
问题已解决,原来写文件标志时,未更新文件当前指针,导致缓冲写入时新输入的内容写在了标志后面,所以在非缓冲的写入,即向磁盘刷新数据时,buffer中的输入数据在512位的标志后面,哈,加文件头搞定了,开心啊
游客

返回顶部