Función GetMulticastIpAddressTable (netioapi.h)
La función GetMulticastIpAddressTable recupera la tabla de direcciones IP de multidifusión en el equipo local.
Sintaxis
IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetMulticastIpAddressTable(
[in] ADDRESS_FAMILY Family,
[out] PMIB_MULTICASTIPADDRESS_TABLE *Table
);
Parámetros
[in] Family
Familia de direcciones que se va a recuperar.
Los valores posibles para la familia de direcciones se enumeran en el archivo de encabezado Winsock2.h . Tenga en cuenta que los valores de la familia de direcciones AF_ y las constantes de familia de protocolos PF_ son idénticos (por ejemplo, AF_INET y PF_INET), por lo que se puede usar cualquier constante.
En el Windows SDK publicado para Windows Vista y versiones posteriores, la organización de los archivos de encabezado ha cambiado y los valores posibles para este miembro se definen en el archivo de encabezado Ws2def.h. Tenga en cuenta que el archivo de encabezado Ws2def.h se incluye automáticamente en Winsock2.h y nunca se debe usar directamente.
Los valores admitidos actualmente son AF_INET, AF_INET6 y AF_UNSPEC.
[out] Table
Puntero a una estructura de MIB_MULTICASTIPADDRESS_TABLE que contiene una tabla de entradas de dirección IP de difusión en el equipo local.
Valor devuelto
Si la función se realiza correctamente, el valor devuelto es NO_ERROR.
Si se produce un error en la función, el valor devuelto es uno de los siguientes códigos de error.
Código devuelto | Descripción |
---|---|
|
Se pasó un parámetro no válido a la función. Este error se devuelve si se pasa un puntero NULL en el parámetro Table o el parámetro Family no se especificó como AF_INET, AF_INET6 o AF_UNSPEC. |
|
Hay recursos de memoria insuficientes disponibles para completar la operación. |
|
No se encontraron entradas de dirección IP de difusión tal como se especifica en el parámetro Family . |
|
No se admite la solicitud. Este error se devuelve si no hay ninguna pila IPv4 en el equipo local y AF_INET se especificó en el parámetro Family . Este error también se devuelve si no hay ninguna pila IPv6 en el equipo local y AF_INET6 se especificó en el parámetro Family . Este error también se devuelve en las versiones de Windows en las que no se admite esta función. |
|
Use FormatMessage para obtener la cadena de mensaje del error devuelto. |
Comentarios
La función GetMulticastIpAddressTable se define en Windows Vista y versiones posteriores.
The
La función GetMulticastIpAddressTable enumera las direcciones IP de multidifusión en un sistema local y devuelve esta información en una estructura MIB_MULTICASTIPADDRESS_TABLE .
Las entradas de dirección IP de multidifusión se devuelven en una estructura de MIB_MULTICASTIPADDRESS_TABLE en el búfer al que apunta el parámetro Table . La estructura MIB_MULTICASTIPADDRESS_TABLE contiene un recuento de entradas de direcciones IP de multidifusión y una matriz de estructuras de MIB_MULTICASTIPADDRESS_ROW para cada entrada de dirección IP de multidifusión. Cuando estas estructuras devueltas ya no son necesarias, libere la memoria llamando a FreeMibTable.
El parámetro Family debe inicializarse en AF_INET, AF_INET6 o AF_UNSPEC.
Tenga en cuenta que la estructura de MIB_MULTICASTIPADDRESS_TABLE devuelta a la que apunta el parámetro Table puede contener relleno para la alineación entre el miembro NumEntries y la primera entrada de matriz MIB_MULTICASTIPADDRESS_ROW en el miembro Table de la estructura MIB_MULTICASTIPADDRESS_TABLE . El relleno para la alineación también puede estar presente entre las entradas de matriz de MIB_MULTICASTIPADDRESS_ROW . Cualquier acceso a una entrada de matriz de MIB_MULTICASTIPADDRESS_ROW debe suponer que puede existir relleno.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | netioapi.h (incluya Iphlpapi.h) |
Library | Iphlpapi.lib |
Archivo DLL | Iphlpapi.dll |