PFN_WSK_CONNECT Rückruffunktion (wsk.h)

Die WskConnect-Funktion verbindet einen verbindungsorientierten Oder Streamsocket mit einer Remotetransportadresse.

Syntax

PFN_WSK_CONNECT PfnWskConnect;

NTSTATUS PfnWskConnect(
  [in]      PWSK_SOCKET Socket,
  [in]      PSOCKADDR RemoteAddress,
            ULONG Flags,
  [in, out] PIRP Irp
)
{...}

Parameter

[in] Socket

Ein Zeiger auf eine WSK_SOCKET-Struktur , die das Socketobjekt für den Socket angibt, der mit einer Remotetransportadresse verbunden ist.

[in] RemoteAddress

Ein Zeiger auf eine Struktur, die die Remotetransportadresse angibt, mit der der Socket verbunden werden soll. Dieser Zeiger muss ein Zeiger auf den spezifischen SOCKADDR-Strukturtyp sein, der der Adressfamilie entspricht, die die WSK-Anwendung beim Erstellen des Sockets angegeben hat.

Flags

Dieser Parameter ist für die Systemverwendung reserviert. Eine WSK-Anwendung muss diesen Parameter auf Null festlegen.

[in, out] Irp

Ein Zeiger auf eine vom Aufrufer zugewiesene IRP, die das WSK-Subsystem verwendet, um den Verbindungsvorgang asynchron abzuschließen. Weitere Informationen zur Verwendung von IRPs mit WSK-Funktionen finden Sie unter Verwenden von IRPs mit Winsock-Kernelfunktionen.

Rückgabewert

WskConnect gibt einen der folgenden NTSTATUS-Codes zurück:

Rückgabecode Beschreibung
STATUS_SUCCESS
Der Socket wurde erfolgreich mit der Remotetransportadresse verbunden. Die IRP wird erfolgreich status abgeschlossen.
STATUS_PENDING
Das WSK-Subsystem konnte den Socket nicht sofort verbinden. Das WSK-Subsystem schließt das IRP ab, nachdem es den Socket mit der Remotetransportadresse verbunden hat. Die status des Verbindungsvorgangs wird im Feld IoStatus.Status des IRP zurückgegeben.
STATUS_FILE_FORCED_CLOSED
Der Socket ist nicht mehr funktionsfähig. Die IRP wird mit einem Fehler status abgeschlossen. Die WSK-Anwendung muss die WskCloseSocket-Funktion aufrufen, um den Socket so schnell wie möglich zu schließen.
Andere status Codes
Ein Fehler ist aufgetreten. Die IRP wird mit einem Fehler status abgeschlossen.

Hinweise

Eine WSK-Anwendung kann die WskConnect-Funktion nur in einem verbindungsorientierten Oder Streamsocket aufrufen, den die Anwendung zuvor durch Aufrufen der WskBind-Funktion an eine lokale Transportadresse gebunden hat.

Bei Streamsockets wird der Socket nach dem erfolgreichen Aufruf von WskConnect in einem Datenstromsocket an einen verbindungsorientierten Flow gebunden und ruft möglicherweise keine Listensocketsfunktionen mehr auf.

Eine WSK-Anwendung kann einen verbindungsorientierten Socket in einem einzelnen Funktionsaufruf erstellen, binden und verbinden, indem die WskSocketConnect-Funktion aufgerufen wird, anstatt die WskSocket-Funktion , die WskBind-Funktion und dann die WskConnect-Funktion aufzurufen. Es wird empfohlen, die WskSocketConnect-Funktion aufzurufen, es sei denn, die WSK-Anwendung muss vor dem Binden oder Verbinden des Sockets eine Socketoption festlegen oder einen E/A-Steuerungsvorgang ausstellen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Universell
Header wsk.h (einschließen von Wsk.h)
IRQL <= DISPATCH_LEVEL

Weitere Informationen

SOCKADDR

WSK_PROVIDER_CONNECTION_DISPATCH WSK_PROVIDER_STREAM_DISPATCH

WSK_SOCKET

WskBind

WskCloseSocket

WskDisconnect

WskDisconnectEvent

WskSocket

WskSocketConnect