Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De functie NotifyIpInterfaceChange registreert het stuurprogramma dat moet worden gewaarschuwd voor wijzigingen in alle IP-interfaces, IPv4-interfaces of IPv6-interfaces op een lokale computer.
Syntaxis
NETIOAPI_API NotifyIpInterfaceChange(
_In_ ADDRESS_FAMILY Family,
_In_ PIPINTERFACE_CHANGE_CALLBACK Callback,
_In_ PVOID CallerContext,
_In_ BOOLEAN InitialNotification,
_Inout_ HANDLE *NotificationHandle
);
Parameters
Family [in]
De adresfamilie waarop het stuurprogramma moet worden geregistreerd voor wijzigingsmeldingen.Mogelijke waarden voor de adresfamilie worden vermeld in het headerbestand Winsock2.h. Houd er rekening mee dat de waarden voor de AF_-adresfamilie en PF_ protocolfamilieconstanten identiek zijn (bijvoorbeeld AF_INET en PF_INET), zodat u beide constanten kunt gebruiken.
In Windows Vista en latere versies van de Windows-besturingssystemen worden mogelijke waarden voor de parameter Family gedefinieerd in het headerbestand Ws2def.h. Houd er rekening mee dat het headerbestand Ws2def.h automatisch wordt opgenomen in Netioapi.h en dat u Ws2def.h nooit rechtstreeks moet gebruiken.
De volgende waarden worden momenteel ondersteund voor de adresfamilie:
AF_INET
De IPv4-adresfamilie. Wanneer deze waarde is opgegeven, wordt met deze functie het stuurprogramma geregistreerd om alleen op de hoogte te worden gesteld voor IPv4-wijzigingsmeldingen.AF_INET6
De IPv6-adresfamilie. Wanneer deze waarde is opgegeven, registreert deze functie het stuurprogramma voor alleen IPv6-wijzigingsmeldingen.AF_UNSPEC
De adresfamilie is niet opgegeven. Wanneer deze waarde is opgegeven, registreert deze functie het stuurprogramma dat moet worden gewaarschuwd voor zowel IPv4- als IPv6-wijzigingen.
Callback [in]
Een aanwijzer naar de functie die moet worden aangeroepen wanneer er een wijziging plaatsvindt. Deze functie wordt aangeroepen wanneer een interfacemelding wordt ontvangen.CallerContext [in]
Een gebruikerscontext die wordt doorgegeven aan de callback-functie die is opgegeven in de parameter Callback wanneer een interfacemelding wordt ontvangen.InitialNotification [in]
Een waarde die aangeeft of de callback direct moet worden aangeroepen nadat de registratie voor wijzigingsmeldingen is voltooid. Deze eerste melding geeft niet aan dat er een wijziging is opgetreden in een IP-interface. Het doel van deze parameter om te bevestigen dat de callback is geregistreerd.NotificationHandle [in, uit]
Een aanwijzer die wordt gebruikt om een ingang te retourneren die later kan worden gebruikt om de registratie van de wijzigingsmelding ongedaan te maken. Bij succes wordt een meldingsgreep geretourneerd in deze parameter. Als er een fout optreedt, wordt NULL- geretourneerd.
Retourwaarde
NotifyIpInterfaceChange- retourneert STATUS_SUCCESS als de functie slaagt.
Als de functie mislukt, retourneert NotifyIpInterfaceChange een van de volgende foutcodes:
| Retourcode | Beschrijving |
|---|---|
| ERROR_INVALID_HANDLE | Er is een interne fout opgetreden waarbij er een ongeldige ingang is opgetreden. |
| STATUS_INVALID_PARAMETER | Er is een ongeldige parameter doorgegeven aan de functie. Deze fout wordt geretourneerd als de parameter Family niet is AF_INET, AF_INET6 of AF_UNSPEC. |
| STATUS_NOT_ENOUGH_MEMORY | Er was onvoldoende geheugen. |
| Overige | Gebruik de functie FormatMessage om de berichttekenreeks voor de geretourneerde fout op te halen. |
Opmerkingen
Het stuurprogramma moet de parameter Family instellen op AF_INET, AF_INET6 of AF_UNSPEC.
De aanroep van de callback-functie die is opgegeven in de parameter Callback wordt geserialiseerd. De callback-functie moet worden gedefinieerd als een functie van het type VOID. De parameters die aan de callback-functie worden doorgegeven, bevatten het volgende.
| Parameter | Beschrijving |
|---|---|
IN PVOID CallerContext |
De parameter CallerContext die wordt doorgegeven aan de functie NotifyIpInterfaceChange wanneer het stuurprogramma wordt geregistreerd voor wijzigingsmeldingen. |
IN PMIB_IPINTERFACE_ROW rij OPTIONEEL |
Een aanwijzer naar de MIB_IPINTERFACE_ROW vermelding voor de interface die is gewijzigd. Deze parameter is een null- aanwijzer wanneer de MIB_NOTIFICATION_TYPE waarde die wordt doorgegeven in de parameter NotificationType voor de callback-functie is ingesteld op MibInitialNotification. Deze situatie kan alleen optreden als de parameter InitialNotification die wordt doorgegeven aan NotifyIpInterfaceChange- is ingesteld op TRUE- bij het registreren van het stuurprogramma voor wijzigingsmeldingen. |
IN MIB_NOTIFICATION_TYPE NotificationType |
Het meldingstype. Dit lid kan een van de waarden van het MIB_NOTIFICATION_TYPE opsommingstype zijn. |
Als u de registratie van het stuurprogramma voor wijzigingsmeldingen ongedaan wilt maken, roept u de functie CancelMibChangeNotify2 aan en geeft u de parameter NotificationHandle door die NotifyIpInterfaceChange- retourneert.
Eisen
Doelplatform |
Universal |
Versie |
Beschikbaar in Windows Vista en latere versies van de Windows-besturingssystemen. |
Rubriek |
Netioapi.h (inclusief Netioapi.h) |
Bibliotheek |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |