PNRP och WSANSPIoctl
PNRP använder funktionen WSANSPIoctl för att ta emot meddelanden om ändringar i följande:
- En lista över nätverksmoln
- Tillgänglighet för resultat av en namnmatchningsbegäran
Det första anropet till WSALookupServiceBegin definierar vilken typ av information som en klient meddelas om. En klient kan meddelas med ett Windows-meddelande, en slutföranderutin, en handtag till ett WSAEVENT-objekt eller en port. Mer information om alternativ och hur du ställer in parametern lpCompletion finns i WSANSPIoctl.
Om du vill fortsätta att ta emot meddelanden efter ett anrop till WSALookupServiceNextmåste ett program anropa WSANSPIoctl igen.
Funktionen WSALookupServiceNext även om WSANSPIoctl- anropas. Innan du anropar WSALookupServiceNextmåste ett program vänta tills det får ett meddelande – om blockering är ett problem.
När du anropar den här funktionen måste parametrarna ha följande värden:
-
hLookup
-
Anger referensen som WSALookupServiceBegin returnerar.
-
dwControlCode
-
Måste vara SIO_NSP_NOTIFY_CHANGE.
-
lpvInBuffer
-
Måste vara NULL-.
-
cbInBuffer
-
Måste vara noll (0).
-
lpvOutBuffer
-
Måste vara NULL-.
-
cbOutBuffer
-
Måste vara noll (0).
-
lpcbBytesReturerad
-
Måste vara NULL-.
-
lpCompletion
-
Anger antingen NULL- eller en pekare till en WSACOMPLETION- struktur.
När ett meddelande har tagits emot anropar du WSALookupServiceNext en gång för att hämta resultatet.
Avsluta en sökning genom att anropa WSALookupServiceEnd.
Lösningsmeddelanden
En klient kan meddelas när som helst om att en namnmatchningspost läggs till. Klienten anropar sedan WSALookupServiceNext för att hämta matchningsdata.
Om klienten inte använder den här tekniken kan ett anrop till WSALookupServiceNästa blockeras tills den angivna tidsgränsen inträffar.
Molnlisteaviseringar
En klient kan meddelas när som helst när en uppsättning moln ändras.
Funktionen WSALookupServiceNext returnerar WSA_E_NO_MORE som en uppsättning avgränsare. Klientprogrammet måste räkna upp befintliga moln tills det här meddelandet returneras och sedan använda ett meddelandeschema för att hämta efterföljande ändringar när de inträffar. Ett klientprogram kan också anropa WSALookupServiceNext, men anropet blockeras tills en ändring inträffar.
Funktionen WSALookupServiceNext returnerar ett moln i en WSAQUERYSET- struktur. En av följande flaggor returneras i dwOutputFlags medlem.
Värde | Beskrivning |
---|---|
RESULT_IS_ADDED | Molnet som returneras läggs till. |
RESULT_IS_CHANGED | Molnet som returneras ändras. |
RESULT_IS_DELETED | Molnet som returneras tas bort och är inte giltigt. |
Relaterade ämnen
-
WSALookupServiceBegin
-
WSALookupServiceEnd
-
WSAQUERYSET