WdfPdoInitAllocate 函数 (wdfpdo.h)

[仅适用于 KMDF]

WdfPdoInitAllocate 方法为基于框架的总线驱动程序分配 WDFDEVICE_INIT 结构,总线驱动程序在报告新设备时会使用该结构。

语法

PWDFDEVICE_INIT WdfPdoInitAllocate(
  [in] WDFDEVICE ParentDevice
);

参数

[in] ParentDevice

表示新设备的父设备的框架设备对象的句柄。 框架设备对象必须表示功能设备对象(FDO)。

返回值

如果作成功,该方法将返回指向框架分配 WDFDEVICE_INIT 结构的指针。 否则,该方法将返回 NULL

注解

如果总线驱动程序使用静态枚举,它会通过以下方式报告新设备:

  1. 调用 WdfPdoInitAllocate 以分配 WDFDEVICE_INIT 结构。
  2. 根据需要调用 框架设备对象初始化方法框架 PDO 初始化方法,初始化WDFDEVICE_INIT结构。 如果调用其中一种方法失败,驱动程序必须调用 WdfDeviceInitFree
  3. 调用 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(kmPdoInitFreeDeviceCreateType2(kmdf)PdoInitFreeDeviceCreateType4(kmdf)

另请参阅

WdfControlDeviceInitAllocate