Dela via


Funktionen GetIpPathTable

Funktionen GetIpPathEntry hämtar information om en IP-sökvägspost på en lokal dator.

Syntax

NETIOAPI_API GetIpPathTable(
  _In_  ADDRESS_FAMILY    Family,
  _Out_ PMIB_IPPATH_TABLE *Table
);

Parametrar

  • Family [in]
    Adressfamiljen som ska hämtas.

    Möjliga värden för adressfamiljen visas i sidhuvudfilen Winsock2.h. Observera att värdena för AF_-adressfamiljen och PF_ protokollfamiljens konstanter är identiska (till exempel AF_INET och PF_INET), så du kan använda någon av konstanterna.

    I Windows Vista och senare versioner av Windows-operativsystem definieras möjliga värden för parametern Family i rubrikfilen Ws2def.h. Observera att Ws2def.h-huvudfilen automatiskt ingår i Netioapi.h och att du aldrig bör använda Ws2def.h direkt.

    Följande värden stöds för närvarande för adressfamiljen:

    • AF_INET
      IPv4-adressfamiljen. När det här värdet har angetts returnerar den här funktionen ip-sökvägstabellen som endast innehåller IPv4-poster.

    • AF_INET6
      IPv6-adressfamiljen. När det här värdet anges returnerar den här funktionen ip-sökvägstabellen som endast innehåller IPv6-poster.

    • AF_UNSPEC
      Adressfamiljen är ospecificerad. När det här värdet anges returnerar den här funktionen ip-sökvägstabellen som innehåller både IPv4- och IPv6-poster.

  • Table [out]
    En pekare till en MIB_IPPATH_TABLE struktur som innehåller en tabell med IP-sökvägsposter på den lokala datorn.

Returvärde

GetIpPathEntry returnerar STATUS_SUCCESS om funktionen lyckas.

Om funktionen misslyckas returnerar GetIpPathEntry någon av följande felkoder:

Returnera kod Beskrivning
STATUS_INVALID_PARAMETER

En ogiltig parameter skickades till funktionen. Det här felet returneras om en NULL--pekare skickas i parametern Table eller parametern Family inte angavs som AF_INET, AF_INET6 eller AF_UNSPEC.

STATUS_NOT_ENOUGH_MEMORY

Det finns inte tillräckligt med minnesresurser för att slutföra åtgärden.

STATUS_NOT_FOUND

Inga IP-sökvägsposter, som anges i parametern Family, hittades.

STATUS_NOT_SUPPORTED

Begäran stöds inte. Det här felet returneras om ingen IPv4-stack finns på den lokala datorn och AF_INET angavs i parametern Family, eller om ingen IPv6-stack finns på den lokala datorn och AF_INET6 angavs i parametern Family. Det här felet returneras också i versioner av Windows där den här funktionen inte stöds.

Andra

Använd funktionen FormatMessage för att hämta meddelandesträngen för det returnerade felet.

Anmärkningar

Funktionen GetIpPathTable räknar upp IP-sökvägsposterna på en lokal dator och returnerar den här informationen i en MIB_IPPATH_TABLE struktur.

GetIpPathTable- returnerar IP-sökvägsposterna i en MIB_IPPATH_TABLE struktur i bufferten som Table parametern pekar på. Den MIB_IPPATH_TABLE strukturen innehåller ett antal IP-sökvägar och en matris med MIB_IPPATH_ROW strukturer för varje IP-sökvägspost. När dessa returnerade strukturer inte längre krävs bör drivrutinen frigöra minnet genom att anropa FreeMibTable.

Drivrutinen måste initiera parametern Family till antingen AF_INET, AF_INET6 eller AF_UNSPEC.

Observera att den returnerade MIB_IPPATH_TABLE struktur som tabell parametern pekar på kan innehålla utfyllnad för justering mellan NumEntries-medlemmen och den första MIB_IPPATH_ROW matrisposten i Table medlem i MIB_IPPATH_TABLE-strukturen. Utfyllnad för justering kan också finnas mellan MIB_IPPATH_ROW matrisposter. All åtkomst till en MIB_IPPATH_ROW matrispost bör förutsätta att utfyllnad kan finnas.

Krav

Målplattform

Universell

Version

Finns i Windows Vista och senare versioner av Windows-operativsystemen.

Rubrik

Netioapi.h (inkludera Netioapi.h)

Bibliotek

Netio.lib

IRQL

< DISPATCH_LEVEL

Se även

FreeMibTable

FlushIpPathTable

GetIpPathEntry

MIB_IPPATH_ROW

MIB_IPPATH_TABLE