Partager via


PFN_WSK_CONNECT fonction de rappel (wsk.h)

La fonction WskConnect connecte un socket orienté connexion ou de flux à une adresse de transport distante.

Syntaxe

PFN_WSK_CONNECT PfnWskConnect;

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

Paramètres

[in] Socket

Pointeur vers une structure WSK_SOCKET qui spécifie l’objet socket pour le socket connecté à une adresse de transport distante.

[in] RemoteAddress

Pointeur vers une structure qui spécifie l’adresse de transport distante à laquelle connecter le socket. Ce pointeur doit être un pointeur vers le type de structure SOCKADDR spécifique qui correspond à la famille d’adresses spécifiée par l’application WSK spécifiée lors de la création du socket.

Flags

Ce paramètre est réservé à l’utilisation du système. Une application WSK doit définir ce paramètre sur zéro.

[in, out] Irp

Pointeur vers un IRP alloué par l’appelant que le sous-système WSK utilise pour terminer l’opération de connexion de manière asynchrone. Pour plus d’informations sur l’utilisation d’IRPs avec des fonctions WSK, consultez Utilisation d’IRPs avec winsock Kernel Functions.

Valeur de retour

WskConnect retourne l’un des codes NTSTATUS suivants :

Retourner le code Description
STATUS_SUCCESS
Le socket a été correctement connecté à l’adresse de transport distante. L’IRP sera terminé avec l’état de réussite.
STATUS_PENDING
Le sous-système WSK n’a pas pu connecter le socket immédiatement. Le sous-système WSK termine l’IRP une fois qu’il a connecté le socket à l’adresse de transport distante. L’état de l’opération de connexion est retourné dans le champ IoStatus.Status du protocole IRP.
STATUS_FILE_FORCED_CLOSED
Le socket n’est plus fonctionnel. L’IRP est terminé avec l’état d’échec. L’application WSK doit appeler la fonction WskCloseSocket pour fermer le socket dès que possible.
Autres codes d’état
Une erreur s’est produite. L’IRP est terminé avec l’état d’échec.

Remarques

Une application WSK peut appeler la fonction WskConnect uniquement sur un socket orienté connexion ou de flux que l’application a précédemment liée à une adresse de transport locale en appelant la fonction WskBind.

Pour les sockets de flux, une fois WskConnect est appelé avec succès sur un socket de flux, le socket est validé dans un flux orienté connexion et n’appelle plus les fonctions de socket d’écoute.

Une application WSK peut créer, lier et connecter un socket orienté connexion dans un appel de fonction unique en appelant la fonction WskSocketConnect au lieu d’appeler la fonction WskSocket, la fonction WskBind, puis la fonction WskConnect. Nous vous recommandons d’appeler la fonction WskSocketConnect, sauf si l’application WSK doit définir une option de socket ou émettre une opération de contrôle d’E/S avant la liaison ou la connexion du socket.

Exigences

Exigence Valeur
client minimum pris en charge Disponible dans Windows Vista et versions ultérieures des systèmes d’exploitation Windows.
plateforme cible Universel
d’en-tête wsk.h (include Wsk.h)
IRQL <= DISPATCH_LEVEL

Voir aussi

SOCKADDR

WSK_PROVIDER_CONNECTION_DISPATCH WSK_PROVIDER_STREAM_DISPATCH

WSK_SOCKET

WskBind

WskCloseSocket

WskDisconnect

WskDisconnectEvent

WskSocket

WskSocketConnect