Condividi tramite


Funzione GetIpPathTable (netioapi.h)

La funzione GetIpPathTable recupera la tabella del percorso IP nel computer locale.

Sintassi

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetIpPathTable(
  [in]  ADDRESS_FAMILY    Family,
  [out] PMIB_IPPATH_TABLE *Table
);

Parametri

[in] Family

Famiglia di indirizzi da recuperare.

I valori possibili per la famiglia di indirizzi sono elencati nel file di intestazione Winsock2.h . Si noti che i valori per la famiglia di indirizzi AF_ e le costanti della famiglia di protocolli PF_ sono identiche (ad esempio, AF_INET e PF_INET), in modo che sia possibile usare entrambe le costanti.

Nella Windows SDK rilasciata per Windows Vista e versioni successive, l'organizzazione dei file di intestazione è stata modificata e i valori possibili per questo membro sono definiti nel file di intestazione Ws2def.h. Si noti che il file di intestazione Ws2def.h viene automaticamente incluso in Winsock2.h e non deve mai essere usato direttamente.

I valori attualmente supportati sono AF_INET, AF_INET6 e AF_UNSPEC.

Valore Significato
AF_UNSPEC
0
La famiglia di indirizzi non è specificata. Quando questo parametro viene specificato, questa funzione restituisce la tabella del percorso IP contenente sia le voci IPv4 che IPv6.
AF_INET
2
Famiglia di indirizzi IPv4 (Internet Protocol versione 4). Quando questo parametro viene specificato, questa funzione restituisce la tabella del percorso IP contenente solo le voci IPv4.
AF_INET6
23
Famiglia di indirizzi IPv6 (Internet Protocol versione 6). Quando questo parametro viene specificato, questa funzione restituisce la tabella del percorso IP contenente solo le voci IPv6.

[out] Table

Puntatore a una struttura MIB_IPPATH_TABLE che contiene una tabella di voci di percorso IP nel computer locale.

Valore restituito

Se la funzione ha esito positivo, il valore restituito viene NO_ERROR.

Se la funzione ha esito negativo, il valore restituito è uno dei codici di errore seguenti.

Codice restituito Descrizione
ERROR_INVALID_PARAMETER
Alla funzione è stato passato un parametro non valido. Questo errore viene restituito se un puntatore NULL viene passato nel parametro Table o se il parametro Family non è stato specificato come AF_INET, AF_INET6 o AF_UNSPEC.
ERROR_NOT_ENOUGH_MEMORY
Per completare l'operazione sono disponibili risorse di memoria insufficienti.
ERROR_NOT_FOUND
Non sono state trovate voci di percorso IP specificate nel parametro Family .
ERROR_NOT_SUPPORTED
La richiesta non è supportata. Questo errore viene restituito se non si trova alcun stack IPv4 nel computer locale e AF_INET è stato specificato nel parametro Family . Questo errore viene restituito anche se non si trova alcun stack IPv6 nel computer locale e AF_INET6 è stato specificato nel parametro Family . Questo errore viene restituito anche nelle versioni di Windows in cui questa funzione non è supportata.
Altri
Usare FormatMessage per ottenere la stringa del messaggio per l'errore restituito.

Commenti

La funzione GetIpPathTable viene definita in Windows Vista e versioni successive.

The
La funzione GetIpPathTable enumera le voci del percorso IP in un sistema locale e restituisce queste informazioni in una struttura MIB_IPPATH_TABLE .

Le voci del percorso IP vengono restituite in una struttura MIB_IPPATH_TABLE nel buffer a cui punta il parametro Table . La struttura MIB_IPPATH_TABLE contiene un numero di voci di percorso IP e una matrice di strutture MIB_IPPATH_ROW per ogni voce di percorso IP. Quando queste strutture restituite non sono più necessarie, liberare la memoria chiamando FreeMibTable.

Il parametro Family deve essere inizializzato in AF_INET, AF_INET6 o AF_UNSPEC.

Si noti che la struttura restituita MIB_IPPATH_TABLE a cui punta il parametro Table può contenere spaziatura interna per l'allineamento tra il membro NumEntries e la prima voce di matrice MIB_IPPATH_ROW nel membro Table della struttura MIB_IPPATH_TABLE . La spaziatura interna per l'allineamento può essere presente anche tra le voci della matrice MIB_IPPATH_ROW . Qualsiasi accesso a una voce di matrice MIB_IPPATH_ROW deve presupporre che la spaziatura interna possa esistere.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione netioapi.h (include Iphlpapi.h)
Libreria Iphlpapi.lib
DLL Iphlpapi.dll

Vedi anche

FlushIpPathTable

FreeMibTable

GetIpPathEntry

MIB_IPPATH_ROW

MIB_IPPATH_TABLE