请输入您要查询的百科知识:

 

词条 IoCreateDevice()
释义

概述

驱动中调用此函数来创建设备对象

函数声明

IoCreateDevice函数用于创建常规的设备对象.

NTSTATUS IoCreateDevice

(

IN PDRIVER_OBJECT DriverObject,

IN ULONG DeviceExtensionSize,

IN PUNICODE_STRING DeviceNameOPTIONAL,

IN DEVICE_TYPE DeviceType,

IN ULONG DeviceCharacteristics,

IN BOOLEAN Exclusive,

OUT PDEVICE_OBJECT *DeviceObject

);

参数

参数说明

DriverObject

一个指向调用该函数的驱动程序对象.每一个驱动程序在它的DriverEntry过程里接收一个指向它的驱动程序对象.

WDM功能和过滤驱动程序也在他们的AddDevice过程接受一个驱动程序对象的指针.

DeviceExtensionSize

指定驱动程序为设备扩展对象而定义的结构体的大小.

DeviceName

(可选的参数)指向一个以零结尾的包含Unicode字符串的缓冲区,那是这个设备的名称,该字符串必须是一个完整的设备路径名.

WDM功能驱动程序和过滤驱动程序它们的设备对象没有名字.

注意:如果设备名未提供(即这个参数是NULL),IoCreateDevice创建的设备对象将不会有一个DACL与之相关联.

DeviceType

指定一个由一个系统定义的FILE_DEVICE_XXX常量,表明了这个设备的类型

(如FILE_DEVICE_DISK,FILE_DEVICE_KEYBOARD等),或供应商定义的一种新型设备的类型.

DeviceCharacteristics

指定一个或多个系统定义的常量,连接在一起,提供有关驱动程序的设备其他信息.对于可能的设备特征信息,

见DEVICE_OBJECT结构体.

Exclusive

如果指定设备是独占的,大部分驱动程序设置这个值为FALSE,如果是独占的话设置为TRUE,非独占设置为FALSE.

DeviceObject

一个指向DEVICE_OBJECT结构体指针的指针,这是一个指针的指针,指向的指针用来接收DEVICE_OBJECT结构体的指针.

返回值

IoCreateDevice函数成功时返回STATUS_SUCCESS,失败时返回适当的NTSTATUS错误代码.这时这个函

返回值STATUS_INSUFFICIENT_RESOURCES

STATUS_OBJECT_NAME_EXISTS

STATUS_OBJECT_NAME_COLLISION

调用要求

包含文件:wdm.h,ntddk.h

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/2/27 14:00:10