Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
GetIpInterfaceTable işlevi, yerel bilgisayardaki IP arabirimi girdilerini alır.
Sözdizimi
NETIOAPI_API GetIpInterfaceTable(
_In_ ADDRESS_FAMILY Family,
_Out_ PMIB_IPINTERFACE_TABLE *Table
);
Parametre
Aile [in]
Alınacak IP arabirimlerinin adres ailesi.Adres ailesi için olası değerler Winsock2.h üst bilgi dosyasında listelenir. AF_ adres ailesi ve PF_ protokol ailesi sabitlerinin değerlerinin aynı olduğunu unutmayın (örneğin, AF_INET ve PF_INET), böylece sabitlerden birini kullanabilirsiniz.
Windows Vista ve Windows işletim sistemlerinin sonraki sürümlerinde, Family parametresinin olası değerleri Ws2def.h üst bilgi dosyasında tanımlanır. Ws2def.h üst bilgi dosyasının Netioapi.h dosyasına otomatik olarak eklendiğini ve Ws2def.h dosyasını hiçbir zaman doğrudan kullanmamalısınız.
Şu anda adres ailesi için aşağıdaki değerler desteklenmektedir:
AF_INET
IPv4 adres ailesi.AF_INET6
IPv6 adres ailesi.AF_UNSPEC
Adres ailesi belirtilmemiş. Bu değer belirtildiğinde, GetIpInterfaceTable işlevi hem IPv4 hem de IPv6 girdilerini içeren IP arabirimi tablosunu döndürür.
Tablo [out]
MIB_IPINTERFACE_TABLE yapısında IP arabirimi girdileri tablosunu alan bir arabelleğe yönelik işaretçi.
Dönüş değeri
getIpInterfaceTable , işlev başarılı olursa STATUS_SUCCESS döndürür.
İşlev başarısız olursa GetIpInterfaceTable aşağıdaki hata kodlarından birini döndürür:
| İade kodu | Açıklama |
|---|---|
| STATUS_INVALID_PARAMETER | İşleve geçersiz bir parametre geçirildi. Tablo parametresinde bir NULL işaretçisi geçirilirse veya Family parametresi AF_INET, AF_INET6 veya AF_UNSPEC olarak belirtilmezse bu hata döndürülür. |
| STATUS_NOT_ENOUGH_MEMORY | İşlemi tamamlamak için yeterli bellek kaynağı yok. |
| STATUS_NOT_FOUND | Family parametresinde belirtildiği gibi HIÇBIR IP arabirimi girdisi bulunamadı. |
| STATUS_NOT_SUPPORTED | İşlev desteklenmez. Adresi parametresinde belirtilen IP aktarımı yerel bilgisayarda yapılandırılmadığında bu hata döndürülür. Bu hata, bu işlevin desteklenmediği Windows sürümlerinde de döndürülür. |
| Diğer | Döndürülen hatanın ileti dizesini almak için FormatMessage işlevini kullanın. |
Açıklamalar
GetIpInterfaceTable işlevi, yerel bilgisayardaki IP arabirimlerini numaralandırır ve bu bilgileri MIB_IPINTERFACE_TABLE bir yapıda döndürür.
GetIpInterfaceTable, Tablo parametresinin işaret olduğu arabellekteki MIB_IPINTERFACE_TABLE bir yapıda IP arabirimi girdilerini döndürür. MIB_IPINTERFACE_TABLE yapısı bir IP arabirimi giriş sayısı ve her IP arabirimi girişi için bir dizi MIB_IPINTERFACE_ROW yapısı içerir. Döndürülen bu yapılar artık gerekli olmadığında, sürücünüz FreeMibTable işlevini çağırarak belleği boşaltmalıdır.
Sürücünüzün AF_INET veya AF_INET6 için Family parametresini başlatması gerekir.
Tablo parametresinin işaret olduğu döndürülen MIB_IPINTERFACE_TABLE yapısının, NumEntries üyesi ile MIB_IPINTERFACE_TABLE yapısının Tablo üyesindeki ilk MIB_IPINTERFACE_ROW dizi girişi arasında hizalama için doldurma içerebileceğini unutmayın. MIB_IPINTERFACE_ROW dizi girişleri arasında hizalama için doldurma da bulunabilir. MIB_IPINTERFACE_ROW dizi girişine yapılan tüm erişimlerde doldurmanın mevcut olabileceği varsayılmalıdır.
Gereksinim -leri
Hedef platform |
Evrensel |
Sürüm |
Windows Vista ve Windows işletim sistemlerinin sonraki sürümlerinde kullanılabilir. |
Üstbilgi |
Netioapi.h (Netioapi.h içerir) |
Kütüphane |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |