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
インターフェイス情報構造体 ( NET_IF_INFORMATION ) のNDIS_OBJECT_HEADER構造体。 プロバイダーは、Header が指定する構造体の Type メンバーをNDIS_OBJECT_TYPE_DEFAULTに設定し、Revision メンバーを NDIS_OBJECT_REVISION_1に、Size メンバーを NDIS_SIZEOF_NET_IF_INFORMATION_REVISION_1に設定します。
Flags
この構造体が記述するインターフェイスに関する情報を提供するフラグ。 これらのフラグは、ビットごとの OR 演算と組み合わされます。 フラグが適用されない場合は、このメンバーを 0 に設定します。 次のフラグ値が定義されています。
NIIF_HARDWARE_INTERFACE
ネットワーク インターフェイスがハードウェア用であるかどうかを設定します。
NIIF_FILTER_INTERFACE
ネットワーク インターフェイスがフィルター モジュール用であるかどうかを設定します。
NIIF_NDIS_RESERVED1
NDIS 用に予約されています。
NIIF_NDIS_RESERVED2
NDIS 用に予約されています。
NIIF_NDIS_RESERVED3
NDIS 用に予約されています。
PhysicalLocation
で指定されたインターフェイスに関連付けられているハードウェアの物理的な場所。 NET_PHYSICAL_LOCATION 構造体。
WanTunnelType
WAN デバイスの tunnelIfEncapsMethod (RFC 2667 から)。 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 を提供できない場合は、0 個の GUID を渡すことができます。 この場合、NDIS はプライマリ コンパートメントの既定のネットワークにインターフェイスを登録します。
SupportedStatistics
インターフェイスがサポートする統計。 詳細については、 の SupportedStatistics メンバーを参照してください。 構造体をNDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES します。
MediaType
インターフェイスがサポートする NdisMediumXxx 型。 詳細については、「 NDIS_MEDIUM」を参照してください。
PhysicalMediumType
インターフェイスの物理メディアの種類。 詳細については、「OID_GEN_PHYSICAL_MEDIUM」を参照してください 。
注釈
ネットワーク インターフェイス プロバイダーは、登録済みインターフェイスに関する情報を NDIS に提供するために、NET_IF_INFORMATION構造体を初期化します。 インターフェイスを登録するために、プロバイダーは NET_IF_INFORMATION 構造体へのポインターを に渡します。 NdisIfRegisterInterface 関数。
インターフェイス プロバイダーは、構造体と、PhysAddressOffset、PermanentPhysAddressOffset、および FriendlyNameOffset メンバーが指定する配列に十分なメモリを割り当てる必要があります。 プロバイダーは、構造体の後に配列の値を指定し、配列の場所を識別するようにオフセット メンバーを設定する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | NDIS 6.0 以降でサポートされています。 |
Header | ndis.h (Ndis.h を含む) |