Voltar à lista
Windows Win32Rede (Winsock)ws2_32.dll

socket

Cria um novo socket, retornando um descritor SOCKET.

Descrição

A API Winsock mantém deliberadamente nomes e semântica próximos aos BSD sockets originais (diferente do resto da Win32 API, em PascalCase) para facilitar portabilidade de código de rede — mas SOCKET não é intercambiável com um HANDLE de arquivo comum como no Linux, onde um socket é apenas mais um descritor de arquivo.

Header: winsock2.hDLL: ws2_32.dllNative API: NtCreateFile (via AFD.sys)

Nota

Equivalente ao `socket` do Linux, embora internamente implementado sobre o driver de kernel AFD.sys, não uma syscall de sockets dedicada.

Assinatura

SOCKET socket(int af, int type, int protocol);

Parâmetros

ParâmetroTipoDescrição
afintFamília de endereços: AF_INET, AF_INET6.
typeintSOCK_STREAM, SOCK_DGRAM.
protocolintIPPROTO_TCP, IPPROTO_UDP, ou 0 para o padrão.

Valor de retorno

Um novo SOCKET em sucesso; INVALID_SOCKET em erro (consulte WSAGetLastError).

Códigos de erro (GetLastError)

ERROR_NOT_SUPPORTED(50)
O pedido não é suportado.

Relacionadas