Функция NdisCloseAdapterEx (ndis.h)
Драйвер протокола вызывает функцию NdisCloseAdapterEx , чтобы освободить привязку и ресурсы, выделенные при вызове драйвером функции NdisOpenAdapterEx .
Синтаксис
NDIS_STATUS NdisCloseAdapterEx(
[in] NDIS_HANDLE NdisBindingHandle
);
Параметры
[in] NdisBindingHandle
Дескриптор, предоставленный NDIS в параметре NdisBindingHandleобъекта NdisOpenAdapterEx. Этот дескриптор идентифицирует привязку, которую должен закрыть NDIS.
Возвращаемое значение
NdisCloseAdapterEx возвращает одно из следующих значений состояния:
Код возврата | Описание |
---|---|
|
NdisCloseAdapterEx успешно закрыл привязку к базовому адаптеру минипорта. |
|
NdisCloseAdapterEx не завершил операцию закрытия, и операция будет выполнена асинхронно. NDIS вызывает драйвер протокола Функция ProtocolCloseAdapterCompleteEx после завершения операции. |
Комментарии
Драйвер протокола обычно вызывает NdisCloseAdapterEx из своего Функция ProtocolUnbindAdapterEx . Драйвер также может вызывать NdisCloseAdapterEx из своей функции ProtocolBindAdapterEx . Например, если драйверу не удалось задать значение OID после вызова NdisOpenAdapterEx, он может вызвать NdisCloseAdapterEx из своей функции ProtocolBindAdapterEx .
Если драйвер протокола должен закрыть адаптер miniport вне контекста ProtocolUnbindAdapterEx или ProtocolBindAdapterEx, он должен вызвать функцию NdisUnbindAdapter .
Перед вызовом NdisCloseAdapterEx драйверы протоколов должны дождаться завершения всех запросов на отправку и запросов OID, которые они были созданы.
Как только драйвер вызывает NdisCloseAdapterEx, дескриптор, полученный из функции NdisOpenAdapterEx в параметре NdisBindingHandle , становится недопустимым.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается в NDIS 6.0 и более поздних версиях. |
Целевая платформа | Персональный компьютер |
Верхняя часть | ndis.h (включая Ndis.h) |
Библиотека | Ndis.lib |
IRQL | PASSIVE_LEVEL |
Правила соответствия DDI | Irql_Protocol_Driver_Function(ndis) |