neak47
驱动小牛
驱动小牛
  • 注册日期2009-05-25
  • 最后登录2016-01-09
  • 粉丝4
  • 关注0
  • 积分140分
  • 威望1221点
  • 贡献值1点
  • 好评度0点
  • 原创分0分
  • 专家分1分
阅读:1460回复:1

minifilter文件有效长度问题

楼主#
更多 发布于:2009-09-23 17:39
在minifilter中,如何知道非缓存分页IO读写中,文件的有效长度?
devia
论坛版主
论坛版主
  • 注册日期2005-05-14
  • 最后登录2016-04-05
  • 粉丝3
  • 关注0
  • 积分1029分
  • 威望712点
  • 贡献值1点
  • 好评度555点
  • 原创分8分
  • 专家分4分
沙发#
发布于:2009-09-24 11:09
因为Paging IO它不会改变文件的长度, 所以你可以简单的获取文件的FCB,
typedef struct _FSRTL_COMMON_FCB_HEADER {
  CSHORT  NodeTypeCode;
  CSHORT  NodeByteSize;
  UCHAR  Flags;
  UCHAR  IsFastIoPossible;
  UCHAR  Flags2;
  UCHAR  Reserved : 4;
  UCHAR  Version : 4;
  PERESOURCE  Resource;
  PERESOURCE  PagingIoResource;
  LARGE_INTEGER  AllocationSize;
  LARGE_INTEGER  FileSize;
  LARGE_INTEGER  ValidDataLength;  // 文件的有效数据长度
} FSRTL_COMMON_FCB_HEADER;
typedef FSRTL_COMMON_FCB_HEADER *PFSRTL_COMMON_FCB_HEADER;
人总在矛盾中徘徊。。。
游客

返回顶部