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


функция обратного вызова NDK_FN_CLOSE_OBJECT (ndkpi.h)

Функция (NDK_FN_CLOSE_OBJECT) NdkCloseObject инициирует закрытый запрос для объекта NDK.

Синтаксис

NDK_FN_CLOSE_OBJECT NdkFnCloseObject;

NTSTATUS NdkFnCloseObject(
  [in]           NDK_OBJECT_HEADER *pNdkObject,
  [in]           NDK_FN_CLOSE_COMPLETION CloseCompletion,
  [in, optional] PVOID RequestContext
)
{...}

Параметры

[in] pNdkObject

Указатель на заголовок объекта (NDK_OBJECT_HEADER) для закрытия объекта.

[in] CloseCompletion

Указатель на NdkCloseCompletion закрыть функцию обратного вызова завершения (NDK_FN_CLOSE_COMPLETION).

[in, optional] RequestContext

Значение контекста для поставщика NDK, которое передается обратно в функцию NdkCloseCompletion, указанную в параметре closeCompletion.

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

Функция NdkCloseObject возвращает один из следующих кодов NTSTATUS.

Возвращаемый код Описание
STATUS_SUCCESS
Объект NDK закрыт. Поставщик не вызовет функцию NdkCloseCompletion.
STATUS_PENDING
Запрос ожидается, поставщик вызовет функцию NdkCloseCompletion для асинхронного выполнения операции. Запрос закрытия был успешно инициирован, но он может быть не завершен.
Другие коды состояния
Произошла ошибка.

Замечания

Таблица диспетчеризации функций для каждого типа объекта NDK включает указатель NDK_FN_CLOSE_OBJECT функции. Закрытые запросы асинхронны. Потребитель NDK не должен получить доступ к объекту после запуска близкого запроса.

Поставщик NDK должен убедиться, что функция NdkCloseCompletion (NDK_FN_CLOSE_COMPLETION) является последним вызовом обратного вызова для закрывающего объекта. Поставщик должен убедиться, что все незавершенные асинхронные запросы завершены и все выполняемые обратные вызовы возвращаются и дальнейшие обратные вызовы предотвращаются, прежде чем поставщик вызывает функцию NdkCloseCompletion. Когда поставщик вызывает функцию NdkCloseCompletion, поставщик не вызывает какие-либо функции завершения или функции обратного вызова уведомлений для объекта.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Не поддерживается, поддерживается в NDIS 6.30 и более поздних версиях.
минимальный поддерживаемый сервер Windows Server 2012
целевая платформа Виндоус
заголовка ndkpi.h (include Ndkpi.h)
IRQL <=DISPATCH_LEVEL

См. также

требования к времени существования объекта NDKPI

NDK_CONNECTOR_DISPATCH

NDK_CQ_DISPATCH

NDK_FN_CLOSE_COMPLETION

NDK_OBJECT_HEADER