NdisMAllocatePort 函数 (ndis.h)

NdisMAllocatePort 函数分配与微型端口适配器关联的 NDIS 端口。

语法

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

参数

NdisMiniportHandle

传递给 MiniportAdapterHandle 参数的 NDIS 的微型端口适配器句柄 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 成员 NDIS_PORT_CHARACTERISTICSPortCharacteristics 参数指定的结构设置为分配给端口的 NDIS 的端口号。

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

要求

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

另请参阅

分配 NDIS 端口

MiniportInitializeEx

NDIS_PORT_CHARACTERISTICS

NdisMFreePort

OID_GEN_ENUMERATE_PORTS