liwashington
驱动小牛
驱动小牛
  • 注册日期2004-04-30
  • 最后登录2010-10-21
  • 粉丝0
  • 关注0
  • 积分-11分
  • 威望98点
  • 贡献值1点
  • 好评度12点
  • 原创分0分
  • 专家分0分
阅读:1071回复:1

请教高手-关于在驱动中写操作用户态文件的问题

楼主#
更多 发布于:2004-09-29 15:57
在用户创建特定文件时,我想由驱动在文件中做一个标识,于是想通过驱动向该文件头部写一个标识串。开始时总是出现非法访问的错误,原因是调用由用户态产生而我从核心态写入,于是我把用户数据备份下来,再把要写入的标识串写到用户的缓冲区中,写完后再恢复(因标识串比较小),结果是成功了!但是又出现了新问题:用户程序向文件写的数据量是11字节,而我的标识是16字节,文件写入后大小就是标识的前11字节;而用户程序写入30字节时,实际写入的内容是标识的16字节加用户数据的前14字节,也就是说突破不了大小的限制。我想可能与文件创建时有关,所以Hook了ZwCreateFile来查看,但其AllocationSize参数为空,EaLength为0,EaBuffer也为空,也就是在创建时没有限制大小呀。

请高手指教这是什么原因呢?如果要达到我的目的,有什么好办法呢?这里先谢了!
我只想有个好老婆,每天有几顿好饭吃……
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-09-30 09:11
这样处理下去恐怕会遇到很多问题,建议你想其他办法
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
游客

返回顶部