if_nametoindex関数
if_nametoindex 関数は、ネットワーク インターフェイスの ANSI インターフェイス名をインターフェイスのローカル インデックスに変換します。
構文
NET_IFINDEX NETIOAPI_API_ if_nametoindex(
_In_ PCSTR InterfaceName
);
パラメーター
-
InterfaceName [in]
インターフェイス名を含む NULL で終わる ANSI 文字列へのポインター。
戻り値
関数が成功した場合、if_nametoindex はローカル インターフェイスインデックスを返します。 関数が失敗した場合、if_nametoindex は 0 を返します。
備考
if_nametoindex 関数は、インターフェイス名を対応するインデックスにマップします。 この関数は、RFC 2553の IETF で説明されているように、IPv6 の基本的なソケット拡張機能の一部として設計されています。
if_nametoindex 関数は Unix 環境でのドライバーの移植性のために実装されていますが、ConvertInterfaceXxx 関数は、ネットワーク インターフェイス識別子を変換するための推奨される方法です。 if_nametoindex 関数は、ConvertInterfaceNameToLuidA 関数を呼び出して ANSI インターフェイス名を NET_LUID 共用体に変換し、次に ConvertInterfaceLuidToIndex 関数を呼び出して、NET_LUIDをローカル インターフェイス インデックスに変換することで置き換えることができます。
if_nametoindex 関数が失敗し、0 が返された場合、エラー コードを特定できません。
必要条件
ターゲット プラットフォーム |
ユニバーサル |
バージョン |
Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。 |
ヘッダ |
Netioapi.h (Netioapi.h を含む) |
図書館 |
Netio.lib |
IRQL |
PASSIVE_LEVEL |