次の方法で共有


GetIfEntry2 関数

GetIfEntry2 関数は、ローカル コンピューター上の指定されたインターフェイスの情報を取得します。

重要

ドライバー開発者の場合は、NDIS OID を処理するときにデッドロックを回避するために、可能な場合は、MibIfEntryNormalWithoutStatistics で GetIfEntry2Ex を使用することをお勧めします。

構文

NETIOAPI_API GetIfEntry2(
  _Inout_ PMIB_IF_ROW2 Row
);

パラメーター

  • Row [in, out]
    正常に戻った場合、ローカル コンピューター上のインターフェイスの情報を受け取る MIB_IF_ROW2 構造体へのポインター。 入力時に、ドライバーは MIB_IF_ROW2 構造体 の InterfaceLuid メンバーまたは InterfaceIndex メンバーに情報を取得するインターフェイスを設定する必要があります。

戻り値

関数が成功した場合、GetIfEntry2 は STATUS_SUCCESS を返します。

関数が失敗した場合、 GetIfEntry2 は次のいずれかのエラー コードを返します:

リターン コード 説明
STATUS_INVALID_PARAMETER

その関数に渡された無効なパラメーター。 このエラーは、 Row パラメーターに NULL ポインターが渡された場合に返されます。

STATUS_NOT_FOUND

指定されたインターフェイスが見つかりませんでした。 このエラーは、 Row パラメーターが指す MIB_IF_ROW2 構造体の InterfaceLuid メンバーまたは InterfaceIndex メンバーで指定されるネットワーク インターフェイスを関数が見つけられない場合に返されます。

その他

FormatMessage 関数を使用して、返されたエラーのメッセージ文字列を取得します。

解説

入力時に、ドライバーは、 Row パラメーターで渡される MIB_IF_ROW2 構造体で、少なくとも InterfaceLuid メンバーまたは InterfaceIndex メンバーを初期化する必要があります。 そのメンバーは、前に示した順序で使用されます。 したがって、 InterfaceLuid が指定されている場合は、このメンバーを使用してインターフェイスが決定されます。 InterfaceLuid メンバーに値が設定されていない (このメンバーの値がゼロに設定されている) 場合は、次に InterfaceIndex メンバーがインターフェイスを決定するために使用されます。

出力時に、 Row パラメーターが指す MIB_IF_ROW2 構造体の残りのフィールドが入力されます。

要件

対象プラットフォーム

ユニバーサル

バージョン

Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。

ヘッダー

Netioapi.h (Netioapi.h を含む)

ライブラリ

Netio.lib

IRQL

< DISPATCH_LEVEL

関連項目

GetIfTable2

GetIfTable2Ex

MIB_IF_ROW2

MIB_IF_TABLE2