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
在 PortCharacteristics 参数中提供的数据无效。

注解

NdisMAllocatePort 函数为与微型端口适配器关联的端口分配资源和端口号。 在微型端口驱动程序为端口发出 NetEventPortActivation 即插即用 (PnP) 事件之前,端口才处于活动状态。

微型端口驱动程序激活端口后,NDIS 会为过度使用的驱动程序生成 PnP 通知。 如果过度分配的驱动程序或用户模式应用程序发出 OID_GEN_ENUMERATE_PORTS OID 来枚举微型端口适配器的端口,则 NDIS 不会在端口列表中包括非活动分配的端口。

当 NdisMAllocatePort 成功返回时,的 PortNumber 成员portCharacteristics 参数指定的NDIS_PORT_CHARACTERISTICS结构设置为 NDIS 分配给端口的端口号。

不再需要端口后,微型端口驱动程序应调用 NdisMFreePort 函数以释放端口。

要求

要求
最低受支持的客户端 在 NDIS 6.0 及更高版本中受支持。
目标平台 通用
标头 ndis.h (包括 Ndis.h)
Library Ndis.lib
IRQL <= DISPATCH_LEVEL

另请参阅

分配 NDIS 端口

MiniportInitializeEx

NDIS_PORT_CHARACTERISTICS

NdisMFreePort

OID_GEN_ENUMERATE_PORTS