共用方式為


if_indextoname 函式

if_indextoname函式會將網路介面的本機索引轉換為 ANSI 介面名稱。

語法

PCHAR NETIOAPI_API_ if_indextoname(
  _In_  NET_IFINDEX InterfaceIndex,
  _Out_ PCHAR       InterfaceName
);

參數

  • InterfaceIndex [in]
    網路介面的本機索引。

  • InterfaceName [out]
    要保存 Null 終止 ANSI 字串之緩衝區的指標。 如果 if_indextoname 成功, InterfaceName 會包含 ANSI 介面名稱。 此參數指向的緩衝區長度,以位元組為單位,必須等於或大於IF_NAMESIZE。 如需IF_NAMESIZE的詳細資訊,請參閱下列一節。

傳回值

如果此函式成功, if_indextoname 會傳回包含介面名稱之 Null 終止 ANSI 字串的指標。 如果此函式失敗, if_indextoname 會傳回 Null 指標

備註

if_indextoname函式會將介面索引對應至其對應的名稱。 此函式是設計為 IPv6 的基本通訊端延伸模組的一部分,如 RFC 2553中的 IETF 所述。

if_indextoname函式是實作以移植 Unix 環境的驅動程式,但ConvertInterfaceXxx函式是轉換網路介面識別碼的慣用方法。 您可以藉由呼叫ConvertInterfaceIndexToLuid函式來取代if_indextoname函式,以將介面索引轉換成NET_LUID聯集,後面接著呼叫ConvertInterfaceLuidToNameA函式,將NET_LUID轉換為 ANSI 介面名稱。

InterfaceName參數指向的緩衝區長度,以位元組為單位,必須等於或大於IF_NAMESIZE。 IF_NAMESIZE值定義在 Netioapi.h 標頭檔中,等於NDIS_IF_MAX_STRING_SIZE。 在 Ntddndis.h 標頭檔中宣告了沒有終止 Null 字元的介面名稱長度上限NDIS_IF_MAX_STRING_SIZE。 NDIS_IF_MAX_STRING_SIZE定義為 Ifdef.h 標頭檔中定義的IF_MAX_STRING_SIZE常數。

注意

Netioapi.h標頭檔中會自動包含Ntddndis.hIfdef.h標頭檔。 您絕對不應該直接使用 Ntddndis.hIfdef.h 標頭檔。

如果 if_indextoname 函式失敗並傳回 Null 指標,則無法判斷錯誤碼。

規格需求

目標平台

普遍

版本

可在 Windows Vista 和更新版本的 Windows 作業系統中使用。

標頭

Netioapi.h (包含 Netioapi.h)

程式庫

Netio.lib

IRQL

PASSIVE_LEVEL

另請參閱

ConvertInterfaceIndexToLuid

ConvertInterfaceLuidToNameA

NET_LUID