Upcalls, die von Windows Sockets 2-DLL verfügbar gemacht werden
In diesem Abschnitt werden die Upcalls aufgeführt, die Dienstanbieter im Windows Sockets-Client erstellen können. Dienstanbieter erhalten eine Upcall-Dispatchtabelle als Parameter für die WSPStartup-Funktion und verwenden Einträge in dieser Tabelle, um die Upcalls zu erstellen. Daher muss ein Client seine WPU-Funktionen nicht exportieren.
Es ist nicht zwingend erforderlich, dass Anbieter alle diese Upcalls verwenden. Die folgende Tabelle gibt an, welche Upcalls verwendet werden müssen und welche optional sind.
| Funktion | BESCHREIBUNG | Status | Bedeutung |
|---|---|---|---|
| WPUCloseEvent | Schließt ein geöffnetes Ereignisobjekthand handle. | Optional. | Der Anbieter kann stattdessen einen entsprechenden Windows verwenden. |
| WPUCloseSocketHandle | Schließt ein socket-Handle, das von der Windows Sockets-DLL zugeordnet wird. | Erforderlich. | Die Ws2-32.dll interne Zustandsinformationen, die dem Sockethand handle zugeordnet sind, abfragen _ und/oder ändern. |
| WPUCloseThread | Schließt eine Thread-ID für einen internen Dienstthread. | ||
| WPUCompleteOverlappedRequest | Überlappende E/A-Vervollständigungsbenachrichtigung, bei der der Vervollständigungsmechanismus etwas anderes als der Benutzermodus-APC ist. | ||
| WPUCreateEvent | Erstellt ein neues Ereignisobjekt. | Optional. | Der Anbieter kann stattdessen einen entsprechenden Windows verwenden. |
| WPUCreateSocketHandle | Erstellt ein neues Sockethand handle für Nicht-IFS-Anbieter. | Erforderlich für Nicht-IFS-Anbieter. | Die Ws2-32.dll interne Zustandsinformationen, die dem Sockethand handle zugeordnet sind, abfragen _ und/oder ändern. |
| WPUFDIsSet | Überprüft die Mitgliedschaft des angegebenen Sockethandpunkts. | Optional. | Dies ist nur eine benutzerfreundlichkeit Funktion, die weiß, wie FD-Satzstrukturen _ durchdrängt werden. Ein Anbieter muss diese Strukturen möglicherweise trotzdem explizit durchdren. |
| WPUGetProviderPath | Ruft den DLL-Pfad für den angegebenen Anbieter ab. | Erforderlich. | Nur der Ws232.dll weiß, wo eine angrenzende Protokollebene (möglicherweise von einem _ anderen Anbieter) installiert wurde. |
| WPUModifyIFSHandle | Empfängt ein (möglicherweise) geändertes IFS-Handle von der Windows Sockets-DLL. | Erforderlich für IFS-Anbieter. | Die Ws2-32.dll interne Zustandsinformationen, die dem Sockethand handle zugeordnet sind, abfragen _ und/oder ändern. |
| WPUPostMessage | Führt die PostMessage-Standardfunktion so aus, dass die Abwärtskompatibilität erhalten bleibt. | Erforderlich. | Windows 2000 und Windows NT. Windows 95 ermöglicht das Senden von Nachrichten aus dem Kernelmodus. |
| WPUQueryBlockingCallback | Gibt einen Zeiger auf die blockierende Hookfunktion eines Threads zurück. | Erforderlich. | Es gibt keine entsprechende Windows Funktionalität. Nur die _ Ws2-32.dll verfügt über die Informationen, um dies zu erreichen. |
| WPUQuerySocketHandleContext | Ruft den Kontextwert eines Sockets ab (nur NonIFS-Anbieter). | Erforderlich für Nicht-IFS-Anbieter. | Die Ws2-32.dll interne Zustandsinformationen, die dem Sockethand handle zugeordnet sind, abfragen _ und/oder ändern. |
| WPUQueueApc | Reiht einen Benutzermodus-APC in die Warteschlange des angegebenen Threads ein. | Optional. | QueueUserApc kann ebenfalls verwendet werden. |
| WPUResetEvent | Setzt ein Ereignisobjekt zurück. | Optional. | Der Anbieter kann stattdessen einen entsprechenden Windows verwenden. |
| WPUSetEvent | Legt ein Ereignisobjekt fest. | Optional. | Der Anbieter kann stattdessen einen entsprechenden Windows verwenden. |