EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_CLEANUP回调函数 (wdfchildlist.h)

[仅适用于 KMDF]

驱动程序的 EvtChildListAddressDescriptionCleanup 事件回调函数释放驱动程序 EvtChildListAddressDescriptionDuplicate 回调函数分配的 地址 说明的任何内存分配。

语法

EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_CLEANUP EvtWdfChildListAddressDescriptionCleanup;

void EvtWdfChildListAddressDescriptionCleanup(
  [in]      WDFCHILDLIST ChildList,
  [in, out] PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER AddressDescription
)
{...}

参数

[in] ChildList

框架子列表对象的句柄。

[in, out] AddressDescription

指向标识地址说明的 WDF_CHILD_ADDRESS_DESCRIPTION_HEADER 结构的指针。

返回值

没有

言论

如果总线驱动程序使用 动态枚举,则可以通过调用 WdfFdoInitSetDefaultChildListConfigWdfChildListCreate来注册 EvtChildListAddressDescriptionCleanup 回调函数。

如果地址说明指向动态分配内存中存储的其他信息,并且该内存由 EvtChildListAddressDescriptionDuplicate 回调函数分配,驱动程序必须提供 EvtChildListAddressDescriptionCleanup 回调函数。

通常,EvtChildListAddressDescriptionDuplicate 回调函数通过调用 exAllocatePool来分配内存。 EvtChildListAddressDescriptionCleanup 回调函数必须通过调用 ExFreePool解除分配该内存。 此回调函数不得尝试解除分配地址说明的其余部分。 换句话说,回调函数不得释放 AddressDescription 参数指向的地址说明结构;它必须仅释放说明结构指向的其他内存分配。

有关动态枚举的详细信息,请参阅 枚举总线上的设备。

要求

要求 价值
目标平台 普遍
最低 KMDF 版本 1.0
标头 wdfchildlist.h (包括 Wdf.h)
IRQL <= DISPATCH_LEVEL

另请参阅

EvtChildListAddressDescriptionDuplicate

ExAllocatePool

ExFreePool

WDF_CHILD_ADDRESS_DESCRIPTION_HEADER

WdfChildListCreate

WdfFdoInitSetDefaultChildListConfig