IoCreateController 函数 (ntddk.h)
IoCreateController 例程分配内存,并使用驱动程序确定大小的控制器扩展初始化控制器对象。
语法
PCONTROLLER_OBJECT IoCreateController(
[in] ULONG Size
);
参数
[in] Size
指定要为控制器扩展分配的字节数。
返回值
IoCreateController 返回指向控制器对象的指针,如果无法为请求的设备扩展分配内存,则返回 NULL 指针。
言论
控制器对象通常表示具有附加设备的物理设备控制器,其中单个驱动程序执行 I/O 请求。 控制器扩展是从非分页池分配的,并且保证可由任何驱动程序例程和任意线程上下文访问。
控制器对象用于将 I/O作同步到目标设备,I/O 请求可以同时传入单个整体驱动程序。 驱动程序还可以使用控制器对象通过设备通道同步作。
如果 IoCreateController 返回 NULL,驱动程序应会失败设备启动。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows 2000 开始可用。 |
目标平台 | 普遍 |
标头 | ntddk.h (包括 Ntddk.h) |
库 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | HwStorPortProhibitedDIs(storport)、IrqlIoPassive2(wdm)、PowerIrpDDis(wdm) |