Функция 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 успешно выделил ресурсы для порта. |
|
NDIS не удалось выделить ресурсы для порта. |
|
Сбой выделения портов, так как связанный мини-адаптер закрывается. |
|
Данные, предоставленные в параметре 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