Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Funkce GetMulticastIpAddressTable načte tabulku IP adres vícesměrového vysílání na místním počítači.
Syntax
NETIOAPI_API GetMulticastIpAddressTable(
_In_ ADDRESS_FAMILY Family,
_Out_ PMIB_MULTICASTIPADDRESS_TABLE *Table
);
Parametry
rodinný [in]
Rodina adres, která se má načíst.Možné hodnoty pro řadu adres jsou uvedeny v souboru záhlaví Winsock2.h. Všimněte si, že hodnoty pro řadu AF_ adres a konstanty rodiny protokolu PF_ jsou stejné (například AF_INET a PF_INET), takže můžete použít kteroukoli konstantu.
V systému Windows Vista a novějších verzích operačních systémů Windows jsou možné hodnoty parametru Family definovány v souboru hlaviček Ws2def.h. Všimněte si, že soubor hlavičky Ws2def.h je automaticky zahrnutý v Netioapi.h a nikdy byste neměli používat Ws2def.h přímo.
Pro řadu adres se v současné době podporují následující hodnoty:
AF_INET
Řada adres IPv4. Pokud je tato hodnota zadaná, vrátí tato funkce tabulku IP adres vícesměrového vysílání, která obsahuje pouze položky IPv4.AF_INET6
Řada IPv6 adres. Pokud je tato hodnota zadaná, vrátí tato funkce tabulku IP adres vícesměrového vysílání, která obsahuje pouze položky IPv6.AF_UNSPEC
Řada adres není zadaná. Pokud je tato hodnota zadaná, vrátí tato funkce tabulku IP adres vícesměrového vysílání, která obsahuje položky IPv4 i IPv6.
tabulky [out]
Ukazatel na strukturu MIB_MULTICASTIPADDRESS_TABLE, která obsahuje tabulku položek IP adresy vysílání v místním počítači.
Návratová hodnota
GetMulticastIpAddressTable vrátí STATUS_SUCCESS, pokud bude funkce úspěšná.
Pokud funkce selže, GetMulticastIpAddressTable vrátí jeden z následujících kódů chyb:
| Návratový kód | Popis |
|---|---|
| STATUS_INVALID_PARAMETER | Funkci byla předána neplatná hodnota parametru. Tato chyba se vrátí , pokud je v parametru Table předán ukazatel NULL nebo parametr Family nebyl zadán jako AF_INET, AF_INET6 nebo AF_UNSPEC. |
| STATUS_NOT_ENOUGH_MEMORY | K dokončení operace je k dispozici nedostatek prostředků paměti. |
| STATUS_NOT_FOUND | Nebyly nalezeny žádné položky IP adresy vysílání zadané v parametru Family. |
| STATUS_NOT_SUPPORTED | Požadavek není podporován. Tato chyba se vrátí, pokud se na místním počítači nenachází žádný zásobník IPv4 a AF_INET byl zadán v parametru Family nebo pokud se v místním počítači nenachází zásobník IPv6 a AF_INET6 byl zadán v parametru Family. Tato chyba se také vrátí ve verzích Windows, kde tato funkce není podporovaná. |
| Jiné | Pomocí funkce FormatMessage získejte řetězec zprávy pro vrácenou chybu. |
Poznámky
Funkce GetMulticastIpAddressTable vytvoří výčet IP adres vícesměrového vysílání v místním počítači a vrátí tyto informace ve struktuře MIB_MULTICASTIPADDRESS_TABLE.
GetMulticastIpAddressTable vrátí položky IP adresy vícesměrového vysílání ve struktuře MIB_MULTICASTIPADDRESS_TABLE ve vyrovnávací paměti, na kterou odkazuje parametr Table. Struktura MIB_MULTICASTIPADDRESS_TABLE obsahuje počet položek IP adres vícesměrového vysílání a pole struktur MIB_MULTICASTIPADDRESS_ROW pro každou položku IP adresy vícesměrového vysílání. Pokud tyto vrácené struktury již nejsou požadovány, ovladač by měl uvolnit paměť voláním FreeMibTable.
Ovladač musí inicializovat parametr Family na AF_INET, AF_INET6 nebo AF_UNSPEC.
Všimněte si , že vrácená struktura MIB_MULTICASTIPADDRESS_TABLE tabulky tabulka může obsahovat odsazení pro zarovnání mezi NumEntries člen a první položku pole MIB_MULTICASTIPADDRESS_ROW v Tabulce člen struktury MIB_MULTICASTIPADDRESS_TABLE. Odsazení pro zarovnání může být také mezi položkami pole MIB_MULTICASTIPADDRESS_ROW. Jakýkoli přístup k položce pole MIB_MULTICASTIPADDRESS_ROW by měl předpokládat, že odsazení může existovat.