设备对象(DEVICE_OBJECT)主要成员及标志位

DriverObject: 指向与该设备对象相关的驱动程序对象。Windows过滤驱动程序有时需要用这个指针来寻找被过滤设备的驱动程序对象。
CurrentIrp: 指向最近发往驱动程序StartIo函数的I/O请求包。
Flags: 包含一组标志位

  • DO_BUFFERED_IO: 读写操作使用缓冲方式(系统复制缓冲区)访问用户模式数据
  • DO_EXCLUSIVE: 一次只允许一个线程打开设备句柄
  • DO_DIRECT_IO: 读写操作使用直接方式(内存描述符表)访问用户模式数据
  • DO_DEVICE_INITIALIZING: 设备对象正在初始化
  • DO_POWER_PAGABLE: 必须在PASSIVE_LEVEL级上处理IRP_MJ_PNP请求
  • DO_POWER_INRUSH: 设备上电期间需要大电流

Characteristics: 包含另一组标志位,描述设备的可选特征

  • FILE_REMOVABLE_MEDIA: 可更换媒介设备
  • FILE_READ_ONLY_DEVICE: 只读设备
  • FILE_FLOPPY_DISKETTE: 软盘驱动器设备
  • FILE_WRITE_ONCE_MDEIA: 只写一次设备
  • FILE_REMOTE_DEVICE: 通过网络连接访问的设备
  • FILE_DEVICE_IS_MOUNTED: 物理媒介已在设备中
  • FILE_DEVICE_SECURE_OPEN: 在打开操作中检查设备对象的安全属性

DeviceType: 一个枚举常量,描述设备类型。

  • FILE_DEVICE_PRINTER: 打印机
  • FILE_DEVICE_SCANNER: 扫描仪
  • ...
  • FILE_DEVICE_UNKNOWN: 未知设备

版权声明:
作者:驱动外包
链接:http://www.51qudong.net/21.html
来源:算法优化_驱动外包_直播算法优化_MAC驱动开发_Linux驱动开发_usb驱动移植外包
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>