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


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

Функция OpenNDKAdapterHandler (OPEN_NDK_ADAPTER_HANDLER) открывает экземпляр адаптера NDK на адаптере NDIS с поддержкой NDK.

Синтаксис

OPEN_NDK_ADAPTER_HANDLER OpenNdkAdapterHandler;

NDIS_STATUS OpenNdkAdapterHandler(
  [in] NDIS_HANDLE MiniportAdapterContext,
  [in] PNDIS_OPEN_NDK_ADAPTER_PARAMETERS Parameters,
       NDK_ADAPTER **ppNdkAdapter
)
{...}

Параметры

[in] MiniportAdapterContext

Дескриптор контекстной области, выделенной драйвером мини-порта в функции MiniportInitializeEx . Драйвер мини-порта использует эту область контекста для хранения сведений о состоянии адаптера мини-порта NDIS.

[in] Parameters

Указатель на структуру NDIS_OPEN_NDK_ADAPTER_PARAMETERS , которая определяет входные параметры для открытия экземпляра NDK_ADAPTER .

Структура NDIS_OPEN_NDK_ADAPTER_PARAMETERS должна указывать основную версию NDKPI и минимальную дополнительную версию NDKPI, которую может поддерживать потребитель NDK.

Если поставщик не поддерживает основную версию, указанную потребителем, поставщик должен завершить запрос с NDIS_STATUS_BAD_VERSION.

Если поставщик поддерживает основную версию, указанную потребителем, и указанная дополнительная версия меньше или равна самой высокой дополнительной версии, которую поддерживает поставщик, поставщик должен выполнить запрос и использовать самую высокую дополнительную версию, которую поддерживает поставщик.

Например, если потребитель запрашивает версию 1.0, а поставщик поддерживает версию 1.1, поставщик должен сообщить о версии 1.1 в NDK_ADAPTER_INFO структуре и заголовках объектов NDK.

Примечание Более высокие дополнительные версии в поставщике всегда полностью обратно совместимы с (т. е. надмножеством) более низкими дополнительными версиями.
 
Если поставщик поддерживает основную версию, указанную потребителем, и указанная дополнительная версия больше, чем версия с наибольшим дополнительным номером, поддерживаемым поставщиком, поставщик должен завершить запрос с NDIS_STATUS_BAD_VERSION.

ppNdkAdapter

Указатель на переменную, содержащую указатель на структуру NDK_ADAPTER . При возвращении из OPEN_NDK_ADAPTER_HANDLER структура NDK_ADAPTER , на которую ссылается ppNdkAdapter , определяет только что открытый экземпляр адаптера NDK.

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

OPEN_NDK_ADAPTER_HANDLER может возвращать одно из следующих значений:

Код возврата Описание
NDIS_STATUS_SUCCESS
Экземпляр адаптера NDK был успешно открыт.
NDIS_STATUS_BAD_VERSION
Запрошенный номер версии не поддерживается.
NDIS_STATUS_ADAPTER_NOT_READY
Функциональность NDK адаптера мини-порта не включена.
NDIS_STATUS_RESOURCES
NDIS не удалось открыть адаптер NDK из-за нехватки ресурсов.

Комментарии

OPEN_NDK_ADAPTER_HANDLER открывает экземпляр NDK_ADAPTER на адаптере NDIS с поддержкой NDK. На одном и том же адаптере NDIS можно создать несколько экземпляров NDK_ADAPTER . Каждый экземпляр NDK_ADAPTER содержит указатель на таблицу функций диспетчеризации, реализующих программный интерфейс приложения NDK. Драйвер мини-порта вызывает функцию CLOSE_NDK_ADAPTER_HANDLER , чтобы закрыть экземпляр адаптера NDK и освободить связанные ресурсы.

Требования

Требование Значение
Минимальная версия клиента Не поддерживается, поддерживается в NDIS 6.30 и более поздних версиях.
Минимальная версия сервера Windows Server 2012
Целевая платформа Windows
Header ndisndk.h
IRQL PASSIVE_LEVEL

См. также раздел

CLOSE_NDK_ADAPTER_HANDLER

MiniportInitializeEx

NDIS_OPEN_NDK_ADAPTER_PARAMETERS

NDK_ADAPTER

NDK_ADAPTER_DISPATCH

NDK_ADAPTER_INFO