Funzione GetMulticastIpAddressTable (netioapi.h)
La funzione GetMulticastIpAddressTable recupera la tabella degli indirizzi IP multicast nel computer locale.
Sintassi
IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetMulticastIpAddressTable(
[in] ADDRESS_FAMILY Family,
[out] PMIB_MULTICASTIPADDRESS_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 di PF_ sono identiche (ad esempio, AF_INET e PF_INET), in modo che sia possibile usare una costante.
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 vengono definiti nel file di intestazione Ws2def.h. Si noti che il file di intestazione Ws2def.h viene incluso automaticamente in Winsock2.h e non deve mai essere usato direttamente.
I valori attualmente supportati sono AF_INET, AF_INET6 e AF_UNSPEC.
[out] Table
Puntatore a una struttura MIB_MULTICASTIPADDRESS_TABLE che contiene una tabella di voci di indirizzi IP anycast nel computer locale.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è NO_ERROR.
Se la funzione ha esito negativo, il valore restituito è uno dei codici di errore seguenti.
Codice restituito | Descrizione |
---|---|
|
Un parametro non valido è stato passato alla funzione. Questo errore viene restituito se un puntatore NULL viene passato nel parametro Table o il parametro Family non è stato specificato come AF_INET, AF_INET6 o AF_UNSPEC. |
|
Le risorse di memoria insufficienti sono disponibili per completare l'operazione. |
|
Non sono state trovate voci di indirizzo IP anycast come specificato nel parametro Family . |
|
La richiesta non è supportata. Questo errore viene restituito se nel computer locale non è presente alcun stack IPv4 e AF_INET è stato specificato nel parametro Family . Questo errore viene restituito anche se nel computer locale non è presente alcun stack IPv6 e AF_INET6 è stato specificato nel parametro Family . Questo errore viene restituito anche nelle versioni di Windows in cui questa funzione non è supportata. |
|
Usare FormatMessage per ottenere la stringa di messaggio per l'errore restituito. |
Commenti
La funzione GetMulticastIpAddressTable è definita in Windows Vista e versioni successive.
The
La funzione GetMulticastIpAddressTable enumera gli indirizzi IP multicast in un sistema locale e restituisce queste informazioni in una struttura di MIB_MULTICASTIPADDRESS_TABLE .
Le voci dell'indirizzo IP multicast vengono restituite in una struttura MIB_MULTICASTIPADDRESS_TABLE nel buffer a cui punta il parametro Table . La struttura MIB_MULTICASTIPADDRESS_TABLE contiene un numero di voci di indirizzi IP multicast e una matrice di strutture MIB_MULTICASTIPADDRESS_ROW per ogni voce di indirizzo IP multicast. 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 MIB_MULTICASTIPADDRESS_TABLE restituita puntata dal parametro Table può contenere spaziatura interna per l'allineamento tra il membro NumEntries e la prima voce della matrice MIB_MULTICASTIPADDRESS_ROW nel membro Table della struttura MIB_MULTICASTIPADDRESS_TABLE. La spaziatura interna per l'allineamento può essere presente anche tra le voci della matrice MIB_MULTICASTIPADDRESS_ROW . Qualsiasi accesso a una voce di matrice MIB_MULTICASTIPADDRESS_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 (includere Iphlpapi.h) |
Libreria | Iphlpapi.lib |
DLL | Iphlpapi.dll |