NET_IF_INFORMATION 结构 (ndis.h)

NET_IF_INFORMATION 结构为 NDIS 提供有关已注册网络接口的信息。

语法

typedef struct _NET_IF_INFORMATION {
  NDIS_OBJECT_HEADER     Header;
  ULONG                  Flags;
  NET_PHYSICAL_LOCATION  PhysicalLocation;
  ULONG                  WanTunnelType;
  ULONG                  PortNumber;
  NET_IF_ACCESS_TYPE     AccessType;
  NET_IF_DIRECTION_TYPE  DirectionType;
  NET_IF_CONNECTION_TYPE ConnectionType;
  BOOLEAN                ifConnectorPresent;
  USHORT                 PhysAddressLength;
  USHORT                 PhysAddressOffset;
  USHORT                 PermanentPhysAddressOffset;
  USHORT                 FriendlyNameLength;
  USHORT                 FriendlyNameOffset;
  GUID                   InterfaceGuid;
  NET_IF_NETWORK_GUID    NetworkGuid;
  ULONG                  SupportedStatistics;
  NDIS_MEDIUM            MediaType;
  NDIS_PHYSICAL_MEDIUM   PhysicalMediumType;
} NET_IF_INFORMATION, *PNET_IF_INFORMATION;

成员

Header

接口信息结构的NDIS_OBJECT_HEADER结构 (NET_IF_INFORMATION) 。 提供程序将 Header 指定的结构的 Type 成员设置为 NDIS_OBJECT_TYPE_DEFAULT,将 Revision 成员设置为 NDIS_OBJECT_REVISION_1,并将 Size 成员设置为 NDIS_SIZEOF_NET_IF_INFORMATION_REVISION_1。

Flags

提供此结构所描述的接口相关信息的标志。 这些标志与按位 OR 运算组合使用。 如果所有标志均未应用,请将此成员设置为零。 定义了以下标志值:

NIIF_HARDWARE_INTERFACE

设置网络接口是否用于硬件。

NIIF_FILTER_INTERFACE

设置网络接口是否用于筛选器模块。

NIIF_NDIS_RESERVED1

保留给 NDIS。

NIIF_NDIS_RESERVED2

保留给 NDIS。

NIIF_NDIS_RESERVED3

保留给 NDIS。

PhysicalLocation

与 中指定的接口关联的硬件的物理位置 NET_PHYSICAL_LOCATION 结构。

WanTunnelType

用于 WAN 设备的 rfC 2667) 的 tunnelIfEncapsMethod (。 如果 WAN 隧道类型未知,请将此成员设置为 NIIF_WAN_TUNNEL_TYPE_UNKNOWN。

PortNumber

接口的 NDIS 端口号。

AccessType

NET_IF_ACCESS_TYPE NDIS 网络接口访问类型。

DirectionType

NET_IF_DIRECTION_TYPE NDIS 网络接口方向类型。

ConnectionType

NET_IF_CONNECTION_TYPE NDIS 网络接口连接类型。

ifConnectorPresent

一个布尔值,指示是否存在连接器。 如果有物理适配器,请将此值设置为 TRUE ;如果没有物理适配器,则将此值设置为 FALSE

PhysAddressLength

物理地址或 MAC 地址的长度(以字节为单位)。 此长度是位于 PhysAddressOffset 成员和 PermanentPhysAddressOffset 成员指定的偏移量的字节数组 长度。

PhysAddressOffset

当前物理地址从此结构开头的偏移量(以字节为单位)。 当前物理地址是字节数组。 数组的长度在 PhysAddressLength 成员中指定。 当前物理地址与 OID_802_3_CURRENT_ADDRESS OID 返回的值相同。

PermanentPhysAddressOffset

永久物理地址自此结构开头的偏移量(以字节为单位)。 永久物理地址是字节数组。 数组的长度在 PhysAddressLength 成员中指定。 永久物理地址与 OID_802_3_PERMANENT_ADDRESS OID 返回的值相同。

FriendlyNameLength

此结构描述的接口友好名称的长度(以字节为单位)。 此长度是 位于 FriendlyNameOffset 成员中偏移量的 WCHAR 数组的长度。

FriendlyNameOffset

友好名称开头的偏移量(以字节为单位)。此结构开头的偏移量。 此名称应包括制造商的名称、产品和接口硬件和软件的版本。 该名称指定为 WCHAR 值的数组。 FriendlyNameLength 成员指定数组的长度。

InterfaceGuid

与 接口关联的 GUID。 接口提供程序为接口生成接口 GUID。 提供程序可以调用 ExUuidCreate 例程来创建 GUID。 接口 GUID 应与分配给接口 的 NET_LUID 值相关联。 如果提供程序将接口的相关信息保留在持久性存储中,则应保存 GUID 并在计算机重启后重新注册接口时重复使用 GUID。

NetworkGuid

与接口所属的网络关联的 GUID。 如果接口提供程序无法提供网络 GUID,它可以传递零 GUID。 在这种情况下,NDIS 将在主隔离舱的默认网络中注册接口。

SupportedStatistics

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

MediaType

接口支持的 NdisMediumXxx 类型。 有关详细信息,请参阅 NDIS_MEDIUM

PhysicalMediumType

接口的物理介质类型。 有关详细信息,请参阅 OID_GEN_PHYSICAL_MEDIUM

注解

网络接口提供程序初始化NET_IF_INFORMATION结构,以便为 NDIS 提供有关已注册接口的信息。 若要注册接口,提供程序会将指向 NET_IF_INFORMATION 结构的指针传递给 NdisIfRegisterInterface 函数。

接口提供程序应为 PhysAddressOffset、PermanentPhysAddressOffsetFriendlyNameOffset 成员指定的结构和数组分配足够的内存。 提供程序必须在 结构后提供数组的值,并设置偏移成员以标识数组的位置。

要求

要求
最低受支持的客户端 在 NDIS 6.0 及更高版本中受支持。
标头 ndis.h (包括 Ndis.h)

另请参阅

ExUuidCreate

NDIS_MEDIUM

NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES

NDIS_OBJECT_HEADER

NET_IF_ACCESS_TYPE

NET_IF_CONNECTION_TYPE

NET_IF_DIRECTION_TYPE

NET_LUID

NET_PHYSICAL_LOCATION

NdisIfRegisterInterface

OID_802_3_CURRENT_ADDRESS

OID_802_3_PERMANENT_ADDRESS

OID_GEN_PHYSICAL_MEDIUM

OID_GEN_STATISTICS