Handle socket
Un handle socket può essere facoltativamente un handle di file in Windows Sockets 2. Un handle socket di un provider Winsock può essere usato con altre funzioni non Winsock, ad esempio ReadFile, WriteFile, ReadFileExe WriteFileEx.
Il membro XP1_IFS_HANDLES nella struttura delle informazioni del protocollo per un provider determina se un handle socket di un provider è un handle IFS (Installable File System). Gli handle socket che sono handle IFS possono essere usati senza una riduzione delle prestazioni con altre funzioni non Winsock (ReadFile e WriteFile, ad esempio). Eventuali handle socket non IFS se usati con funzioni non Winsock (ReadFile e WriteFile, ad esempio) generano interazioni tra il provider e il file system in cui è coinvolto un sovraccarico di elaborazione aggiuntivo che può comportare una riduzione significativa delle prestazioni. Quando si usano handle di socket con funzioni non Winsock, i codici di errore propagati dal file system di base non vengono sempre mappati ai codici di errore Winsock. Di conseguenza, è consigliabile usare handle socket solo con le funzioni Winsock.
Un handle socket non deve essere usato con la funzioneDuplicateHandle. La presenza di provider di servizi a più livelli (LSP) può causare un errore e non esiste alcun modo per il processo di destinazione di importare l'handle del socket.
Nota
I provider di servizi a più livelli sono deprecati. A partire da Windows 8 e Windows Server 2012, usare Piattaforma filtro Windows.
Windows Sockets 2 ha espanso alcune funzioni che trasferisce dati tra socket tramite handle. Le funzioni offrono vantaggi specifici per il trasferimento dei dati e includono WSARecv, WSASende WSADuplicateSocket.