Condividi tramite


PFN_WSK_CONNECT funzione di callback (wsk.h)

La funzione WskConnect connette un socket di connessione o di flusso a un indirizzo di trasporto remoto.

Sintassi

PFN_WSK_CONNECT PfnWskConnect;

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

Parametri

[in] Socket

Puntatore a una struttura WSK_SOCKET che specifica l'oggetto socket per il socket connesso a un indirizzo di trasporto remoto.

[in] RemoteAddress

Puntatore a una struttura che specifica l'indirizzo di trasporto remoto a cui connettere il socket. Questo puntatore deve essere un puntatore al tipo di struttura SOCKADDR specifico che corrisponde alla famiglia di indirizzi specificata dall'applicazione WSK al momento della creazione del socket.

Flags

Questo parametro è riservato per l'uso del sistema. Un'applicazione WSK deve impostare questo parametro su zero.

[in, out] Irp

Puntatore a un chiamante allocato IRP usato dal sottosistema WSK per completare l'operazione di connessione in modo asincrono. Per altre informazioni sull'uso di IRP con funzioni WSK, vedere Uso di IRP con Funzioni kernel Winsock.

Valore restituito

WskConnect restituisce uno dei codici NTSTATUS seguenti:

Codice restituito Descrizione
STATUS_SUCCESS
Il socket è stato connesso correttamente all'indirizzo di trasporto remoto. L'IRP verrà completato con lo stato di esito positivo.
STATUS_PENDING
Il sottosistema WSK non è riuscito a connettere immediatamente il socket. Il sottosistema WSK completerà l'IRP dopo aver connesso il socket all'indirizzo di trasporto remoto. Lo stato dell'operazione di connessione verrà restituito nel campo IoStatus.Status dell'IRP .
STATUS_FILE_FORCED_CLOSED
Il socket non è più funzionale. L'IRP verrà completato con lo stato di errore. L'applicazione WSK deve chiamare la funzione WskCloseSocket per chiudere il socket il prima possibile.
Altri codici di stato
Si è verificato un errore. L'IRP verrà completato con lo stato di errore.

Commenti

Un'applicazione WSK può chiamare la funzione WskConnect solo su un socket di connessione o di flusso associato in precedenza a un indirizzo di trasporto locale chiamando la funzione WskBind .

Per i socket di flusso, una volta che WskConnect viene chiamato correttamente in un socket di flusso, il socket viene eseguito il commit in un flusso orientato alla connessione e potrebbe non chiamare più funzioni socket di ascolto.

Un'applicazione WSK può creare, associare e connettere un socket orientato alla connessione in una singola chiamata di funzione chiamando la funzione WskSocketConnect anziché chiamare la funzione WskSocket , la funzione WskBind e quindi la funzione WskConnect . È consigliabile chiamare la funzione WskSocketConnect a meno che l'applicazione WSK non debba impostare un'opzione socket o rilasciare un'operazione di controllo di I/O prima dell'associazione o della connessione del socket.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows Vista e versioni successive dei sistemi operativi Windows.
Piattaforma di destinazione Universale
Intestazione wsk.h (include Wsk.h)
IRQL <= DISPATCH_LEVEL

Vedi anche

SOCKADDR

WSK_PROVIDER_CONNECTION_DISPATCH WSK_PROVIDER_STREAM_DISPATCH

WSK_SOCKET

WskBind

WskCloseSocket

WskDisconnect

WskDisconnectEvent

WskSocket

WskSocketConnect