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


Функция NdisMAllocatePort (ndis.h)

Функция NdisMAllocatePort выделяет порт NDIS, связанный с мини-адаптером.

Синтаксис

NDIS_STATUS NdisMAllocatePort(
            NDIS_HANDLE                NdisMiniportHandle,
  [in, out] PNDIS_PORT_CHARACTERISTICS PortCharacteristics
);

Параметры

NdisMiniportHandle

Дескриптор минипорта, передаваемый NDIS в параметр MiniportAdapterHandleфункция MiniportInitializeEx.

[in, out] PortCharacteristics

Указатель на объект NDIS_PORT_CHARACTERISTICS структура, которая определяет характеристики порта.

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

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

Возвращаемый код Описание
NDIS_STATUS_SUCCESS
NDIS успешно выделил ресурсы для порта.
NDIS_STATUS_RESOURCES
NDIS не удалось выделить ресурсы для порта.
NDIS_STATUS_CLOSING
Сбой выделения портов, так как связанный мини-адаптер закрывается.
NDIS_STATUS_INVALID_DATA
Данные, предоставленные в параметре portCharacteristic s, недопустимы.

Замечания

Функция NdisMAllocatePort выделяет ресурсы и номер порта для порта, связанного с мини-адаптером. Порт не активен, пока драйвер мини-порта не выдает событие NetEventPortActivation Plug and Play (PnP) для порта.

После активации порта мини-порт NDIS создает уведомление PnP для активных драйверов. Если чрезмерное драйвер или приложение пользовательского режима выдает OID_GEN_ENUMERATE_PORTS OID для перечисления портов минипорта, NDIS не включает неактивные выделенные порты в список портов.

Когда NdisMAllocatePort успешно возвращается, элемент PortNumber NDIS_PORT_CHARACTERISTICS структура, которая параметр portCharacteristics задает номер порта, назначенный порту NDIS.

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается в NDIS 6.0 и более поздних версиях.
целевая платформа Всеобщий
заголовка ndis.h (include Ndis.h)
библиотеки Ndis.lib
IRQL <= DISPATCH_LEVEL

См. также

выделение порта NDIS

MiniportInitializeEx

NDIS_PORT_CHARACTERISTICS

NdisMFreePort

OID_GEN_ENUMERATE_PORTS