Поделиться через


функция обратного вызова 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, которая определяет описание адреса.

Возвращаемое значение

Никакой

Замечания

Если драйвер шины использует динамическое перечисление, он может зарегистрировать функцию обратного вызова EvtChildListAddressDescriptionCleanup путем вызова WdfFdoInitSetDefaultChildListConfig или WdfChildListCreate.

Если описание адреса указывает на дополнительные сведения, хранящиеся в динамически выделенной памяти, и если эта память выделяется 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