Dienstabfrage
Eine Namensdienstabfrage umfasst eine Reihe von Aufrufen: NSPLookupServiceBegin,gefolgt von einem oder mehreren Aufrufen von NSPLookupServiceNext, die mit einem Aufruf von NSPLookupServiceEnd enden. NSPLookupServiceBegin verwendet eine WSAQUERYSET-Struktur als Eingabe, um die Abfrageparameter zusammen mit einem Satz von Flags zu definieren, um zusätzliche Kontrolle über den Suchvorgang zu bieten. Sie gibt ein Abfragehandle zurück, das in den nachfolgenden Aufrufen von NSPLookupServiceNext und NSPLookupServiceEnd verwendet wird.
Der NAMESPACE-SPI-Client ruft NSPLookupServiceNext auf, um Abfrageergebnisse mit Ergebnissen abzurufen, die in einem vom Client bereitgestellten WSAQUERYSET-Puffer bereitgestellt werden. Der Client ruft weiterhin NSPLookupServiceNext auf, bis der Fehlercode WSA _ E NO MORE zurückgegeben _ _ wird, der angibt, dass alle Ergebnisse abgerufen wurden. Die Suche wird dann durch einen Aufruf von NSPLookupServiceEndbeendet. Die NSPLookupServiceEnd-Funktion kann auch verwendet werden, um einen derzeit ausstehenden NSPLookupServiceNext abzubrechen, wenn er von einem anderen Thread aufgerufen wird.
In Windows Sockets 2 werden in Konflikt stehende Fehlercodes für WSAENOMORE (10102) und WSA _ E _ NO MORE _ (10110) definiert. Der Fehlercode WSAENOMORE wird in einer zukünftigen Version entfernt, und nur WSA _ E NO MORE bleibt _ _ erhalten. Namespaceanbieter sollten so bald wie möglich zur Verwendung des _ WSA E _ NO _ MORE-Fehlercodes wechseln, um die Kompatibilität mit dem größtmöglichen Anwendungsumfang aufrechtzuerhalten.