ifdef.h) (NDIS_INTERFACE_INFORMATION 结构

NDIS_INTERFACE_INFORMATION结构提供有关 OID_GEN_INTERFACE_INFO OID 网络接口的信息。

语法

typedef struct _NDIS_INTERFACE_INFORMATION {
  NET_IF_OPER_STATUS         ifOperStatus;
  ULONG                      ifOperStatusFlags;
  NET_IF_MEDIA_CONNECT_STATE MediaConnectState;
  NET_IF_MEDIA_DUPLEX_STATE  MediaDuplexState;
  ULONG                      ifMtu;
  BOOLEAN                    ifPromiscuousMode;
  BOOLEAN                    ifDeviceWakeUpEnable;
  ULONG64                    XmitLinkSpeed;
  ULONG64                    RcvLinkSpeed;
  ULONG64                    ifLastChange;
  ULONG64                    ifCounterDiscontinuityTime;
  ULONG64                    ifInUnknownProtos;
  ULONG64                    ifInDiscards;
  ULONG64                    ifInErrors;
  ULONG64                    ifHCInOctets;
  ULONG64                    ifHCInUcastPkts;
  ULONG64                    ifHCInMulticastPkts;
  ULONG64                    ifHCInBroadcastPkts;
  ULONG64                    ifHCOutOctets;
  ULONG64                    ifHCOutUcastPkts;
  ULONG64                    ifHCOutMulticastPkts;
  ULONG64                    ifHCOutBroadcastPkts;
  ULONG64                    ifOutErrors;
  ULONG64                    ifOutDiscards;
  ULONG64                    ifHCInUcastOctets;
  ULONG64                    ifHCInMulticastOctets;
  ULONG64                    ifHCInBroadcastOctets;
  ULONG64                    ifHCOutUcastOctets;
  ULONG64                    ifHCOutMulticastOctets;
  ULONG64                    ifHCOutBroadcastOctets;
  NET_IF_COMPARTMENT_ID      CompartmentId;
  ULONG                      SupportedStatistics;
} NDIS_INTERFACE_INFORMATION, *PNDIS_INTERFACE_INFORMATION;

成员

ifOperStatus

接口的操作状态。 此状态与 OID_GEN_OPERATIONAL_STATUS OID 返回的值相同。

ifOperStatusFlags

接口的操作状态标志。 此字段是为 NDIS 代理接口提供程序保留的。 其他接口提供程序应将此成员设置为零。

MediaConnectState

NET_IF_MEDIA_CONNECT_STATE连接状态类型。

MediaDuplexState

接口的媒体双工状态。 此状态与 OID_GEN_MEDIA_DUPLEX_STATE OID 返回的值相同。

ifMtu

接口的最大传输单元 (MTU) 。 此 MTU 与 OID_GEN_MAXIMUM_FRAME_SIZE OID 返回的值相同。

ifPromiscuousMode

一个布尔值,如果接口处于混杂模式,则为 TRUE ;否则为 FALSE 。 此值与 OID 查询 OID_GEN_PROMISCUOUS_MODE 返回的值相同。

ifDeviceWakeUpEnable

如果接口支持 LAN 唤醒功能且已启用该功能,则为 TRUE 的布尔值;否则为 FALSE

XmitLinkSpeed

接口的传输链路速度(以字节/秒为单位)。 此速度与 OID_GEN_XMIT_LINK_SPEED OID 查询返回的值相同。

RcvLinkSpeed

接口的接收链接速度(以字节/秒为单位)。 此速度与 OID_GEN_RCV_LINK_SPEED OID 查询返回的值相同。

ifLastChange

接口进入其当前操作状态的时间。 此时间与 OID_GEN_LAST_CHANGE OID 查询返回的值相同。

ifCounterDiscontinuityTime

接口计数器上次中断的时间。 此时间与 OID_GEN_DISCONTINUITY_TIME OID 查询返回的值相同。

ifInUnknownProtos

通过接口接收并因协议未知或不受支持的协议而丢弃的数据包数。 此数字与 OID_GEN_UNKNOWN_PROTOS OID 查询返回的值相同。

ifInDiscards

丢弃的入站数据包数,即使未检测到任何错误,以防止它们传送到较高层协议。 此数字与 OID_GEN_RCV_DISCARDS OID 查询返回的值相同。

ifInErrors

包含导致无法将其传送到更高层协议的错误的入站数据包数。 此数字与 OID_GEN_RCV_ERROR OID 查询返回的值相同。

ifHCInOctets

在此接口上接收的总字节数。 此数字与 OID_GEN_BYTES_RCV OID 返回的值相同。

ifHCInUcastPkts

在接口上未出错的情况下接收的定向数据包数。 此数字与 OID_GEN_DIRECTED_FRAMES_RCV OID 查询返回的值相同。

ifHCInMulticastPkts

在接口上未出错的情况下收到的多播/功能数据包数。 此数字与 OID_GEN_MULTICAST_FRAMES_RCV OID 查询返回的值相同。

ifHCInBroadcastPkts

在接口上未出错的情况下接收的广播数据包数。 此数字与 OID_GEN_BROADCAST_FRAMES_RCV OID 查询返回的值相同。

ifHCOutOctets

接口上未出错的传输字节数。 此数字与 OID_GEN_BYTES_XMIT OID 查询返回的值相同。

ifHCOutUcastPkts

在接口上未出错的情况下传输的定向数据包数。 此数字与 OID_GEN_DIRECTED_FRAMES_XMIT OID 查询返回的值相同。

ifHCOutMulticastPkts

在接口上未出错的情况下传输的多播/功能数据包数。 此数字与 OID_GEN_MULTICAST_FRAMES_XMIT OID 查询返回的值相同。

ifHCOutBroadcastPkts

在接口上传输且未出错的广播数据包数。 此数字与 OID_GEN_BROADCAST_FRAMES_XMIT OID 查询返回的值相同。

ifOutErrors

接口无法传输的数据包数。 此数字与 OID_GEN_XMIT_ERROR OID 查询返回的值相同。

ifOutDiscards

接口丢弃的数据包数。 此数字与 OID_GEN_XMIT_DISCARDS OID 查询返回的值相同。

ifHCInUcastOctets

接收的定向数据包中没有错误的字节数。 此计数与 OID_GEN_DIRECTED_BYTES_RCV 返回的值相同。

ifHCInMulticastOctets

接收的多播/功能数据包中未出错的字节数。 此计数与 OID_GEN_MULTICAST_BYTES_RCV 返回的值相同。

ifHCInBroadcastOctets

接收的广播数据包中没有错误的字节数。 此计数与 OID_GEN_BROADCAST_BYTES_RCV 返回的值相同。

ifHCOutUcastOctets

传输的定向数据包中没有错误的字节数。 此计数与 OID_GEN_DIRECTED_BYTES_XMIT 返回的值相同。

ifHCOutMulticastOctets

在不出错的情况下传输的多播/功能数据包中的字节数。 此计数与 OID_GEN_MULTICAST_BYTES_XMIT 返回的值相同。

ifHCOutBroadcastOctets

传输的广播数据包中没有错误的字节数。 此计数与 OID_GEN_BROADCAST_BYTES_XMIT 返回的值相同。

CompartmentId

如果接口提供程序可以提供接口所属隔离舱的 ID,则为接口所属的隔离舱。 否则,它应返回NET_IF_COMPARTMENT_ID_UNSPECIFIED。 如果接口提供程序返回隔离舱 ID 的NET_IF_COMPARTMENT_ID_UNSPECIFIED,则 NDIS 将返回此接口的正确隔离舱 ID。

SupportedStatistics

支持的统计信息。 有关详细信息,请参阅 NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES 结构的 SupportedStatistics 成员。

注解

NDIS 接口提供程序填充NDIS_INTERFACE_INFORMATION结构以响应 OID_GEN_INTERFACE_INFO OID 的查询。 此结构包含接口生存期内更改的信息。

若要注册为接口提供程序,NDIS 驱动程序会调用 NdisIfRegisterProvider 函数。

要求

要求
最低受支持的客户端 支持 Windows Vista 中的 NDIS 6.0 驱动程序。
标头 ifdef.h (包括 Ndis.h)

另请参阅

网络驱动程序简介

NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES

NET_IF_MEDIA_CONNECT_STATE

NdisIfRegisterProvider

OID_GEN_BROADCAST_BYTES_RCV

OID_GEN_BROADCAST_BYTES_XMIT

OID_GEN_BROADCAST_FRAMES_RCV

OID_GEN_BROADCAST_FRAMES_XMIT

OID_GEN_BYTES_RCV

OID_GEN_BYTES_XMIT

OID_GEN_DIRECTED_BYTES_RCV

OID_GEN_DIRECTED_BYTES_XMIT

OID_GEN_DIRECTED_FRAMES_RCV

OID_GEN_DIRECTED_FRAMES_XMIT

OID_GEN_DISCONTINUITY_TIME

OID_GEN_INTERFACE_INFO

OID_GEN_LAST_CHANGE

OID_GEN_MAXIMUM_FRAME_SIZE

OID_GEN_MEDIA_CONNECT_STATUS_EX

OID_GEN_MEDIA_DUPLEX_STATE

OID_GEN_MULTICAST_BYTES_RCV

OID_GEN_MULTICAST_BYTES_XMIT

OID_GEN_MULTICAST_FRAMES_RCV

OID_GEN_MULTICAST_FRAMES_XMIT

OID_GEN_OPERATIONAL_STATUS

OID_GEN_PROMISCUOUS_MODE

OID_GEN_RCV_DISCARDS

OID_GEN_RCV_ERROR

OID_GEN_RCV_LINK_SPEED

OID_GEN_UNKNOWN_PROTOS

OID_GEN_XMIT_DISCARDS

OID_GEN_XMIT_ERROR

OID_GEN_XMIT_LINK_SPEED