hnsyz
驱动牛犊
驱动牛犊
  • 注册日期2001-12-31
  • 最后登录2010-04-20
  • 粉丝1
  • 关注0
  • 积分108分
  • 威望259点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
阅读:1635回复:1

关于diskperf

楼主#
更多 发布于:2010-03-19 08:54
在diskperf例程中,
#define FILTER_DEVICE_PROPOGATE_CHARACTERISTICS (FILE_REMOVABLE_MEDIA |  \
                                                 FILE_READ_ONLY_DEVICE | \
                                                 FILE_FLOPPY_DISKETTE    \
                                                 )

 propFlags = TargetDevice->Characteristics & FILTER_DEVICE_PROPOGATE_CHARACTERISTICS;
 FilterDevice->Characteristics |= propFlags;
以上两语句, 实现了在pnp事件start中对目标设备对象的特性属性做了更改,根据定义, 是不是应该创建的对象
只对REMOVEABLE 和READ_ONLY和FLOPPY设备处理. 如果我理解的对的话, 不应该处理拦截硬盘IRP呀, 可是
我的却都拦截了.
还有, 这个设备对象特征属性是不是能在创建IOCREATEDEVICE是定义? 而diskperf 为身摸要在pnp中添加设备时
才定义?
望指点一下? 先谢谢了!

学习,交流
hnsyz
驱动牛犊
驱动牛犊
  • 注册日期2001-12-31
  • 最后登录2010-04-20
  • 粉丝1
  • 关注0
  • 积分108分
  • 威望259点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2010-03-19 18:21
下午才明白.
(FILE_REMOVABLE_MEDIA |  \
                                                 FILE_READ_ONLY_DEVICE | \
                                                 FILE_FLOPPY_DISKETTE    \
                                                 )
只是设备特性, 而非我理解的设备特征(类型)的意思.
我跟踪了下, 发现一直是*SERU_OPEN(0x100), 也就
是说
propFlags = TargetDevice->Characteristics & FILTER_DEVICE_PROPOGATE_CHARACTERISTICS;
FilterDevice->Characteristics |= propFlags
语句没效? 今天下班了, 星期一再仔细看看吧.
学习,交流
游客

返回顶部