[仅适用于 KMDF]
WdfPdoInitAllocate 方法为基于框架的总线驱动程序分配 WDFDEVICE_INIT 结构,总线驱动程序在报告新设备时会使用该结构。
语法
PWDFDEVICE_INIT WdfPdoInitAllocate(
[in] WDFDEVICE ParentDevice
);
参数
[in] ParentDevice
表示新设备的父设备的框架设备对象的句柄。 框架设备对象必须表示功能设备对象(FDO)。
返回值
如果作成功,该方法将返回指向框架分配 WDFDEVICE_INIT 结构的指针。 否则,该方法将返回 NULL 。
注解
如果总线驱动程序使用静态枚举,它会通过以下方式报告新设备:
- 调用 WdfPdoInitAllocate 以分配 WDFDEVICE_INIT 结构。
- 根据需要调用 框架设备对象初始化方法 和 框架 PDO 初始化方法,初始化WDFDEVICE_INIT结构。 如果调用其中一种方法失败,驱动程序必须调用 WdfDeviceInitFree。
- 调用 WdfDeviceCreate 以创建框架设备对象,以输入的形式提供初始化WDFDEVICE_INIT结构。
例子
有关使用 WdfPdoInitAllocate的代码示例,请参阅 WdfFdoAddStaticChild。
要求
要求 | 价值 |
---|---|
目标平台 | 普遍 |
最低 KMDF 版本 | 1.0 |
标头 | wdfpdo.h (包括 Wdf.h) |
图书馆 | Wdf01000.sys(请参阅框架库版本控制。 |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | AddPdoToStaticChildList(kmdf),DoubleDeviceInitFree(kmdf),DriverCreate(kmdf)、KmdfIrql(kmdf)、KmdfIrql2(kmdf)、KmdfIrqlExplicit(kmdf)、PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(km,PdoInitFreeDeviceCreateType2(kmdf),PdoInitFreeDeviceCreateType4(kmdf) |