Compartilhar via


getsockname (Windows Sockets)

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função recupera o local de nomes para um Soquete.

Syntax

int getsockname(
  SOCKET s,
  struct sockaddr FAR* name,
  int FAR* namelen
);

Parameters

  • s
    [no] Descritor identificando um Soquete.
  • Nome
    [out] Recebe o endereço (Nome) da Soquete.
  • namelen
    [in, Out] Tamanho da reserva de nome.

Return Value

Se não houver erro, essa função retornará zero. Se um erro ocorrer, será retornado um valor de SOCKET_ERROR, e um código de erro específicos podem ser recuperadas por chamado WSAGetLastError.

A seguinte tabela mostra uma lista dos códigos de erro possível.

Código de erro Descrição

WSANOTINITIALISED

Um bem-sucedido WSAStartup chamar deve ocorrer antes de usar essa função.

WSAENETDOWN

Falha no subsistema da rede.

WSAEFAULT

O Nome Ou namelen parâmetro não é um válido parte espaço de endereço de usuário, ou a namelen parâmetro é muito pequeno.

WSAEINPROGRESS

Um bloqueio é chamar sockets do Windows (Winsock) em andamento, ou o serviço provedor ainda é processamento um função callback.

WSAENOTSOCK

O descritor não é um Soquete.

WSAEINVAL

O Soquete não foi ligado a um endereço com BIND (Soquetes do Windows), ou ADDR_ANY é especificado em BIND Mas conexão ainda não tenha ocorrido.

Remarks

Essa função recupera o atual nome para o descritor Soquete especificado na Nome parâmetro. Ele é usado no ligado ou conectado Soquete especificado pelo s parâmetro. O local associação é retornada. Este chamar é especialmente útil quando um conectar (Soquetes do Windows) chamar ficou sem fazer um BIND chamar primeiro. O getsockname função fornece a única maneira para determinar o local associação que foi definida, o sistema.

Em chamar, o namelen argumento contém o tamanho da reserva de nome, em bytes. Em retorno, o namelen parâmetro contém o real tamanho em bytes das Nome parâmetro.

Essa função não sempre retorna informações sobre o endereço hospedar quando a Soquete foi ligado a um não especificado endereço, a menos que tenha sido conectada a Soquete com conectar (Soquetes do Windows) Ou aceitar (Soquetes do Windows) (Por exemplo, usar ADDR_ANY). Um aplicativo Soquetes do Windows não deve presumem que o endereço será especificado, a menos que o Soquete está conectado. O endereço que será usado para o Soquete é desconhecido, a menos que o Soquete é conectado quando usado em um hospedar com diversas bases. Se estiver usando um sem conexão o Soquete protocolo, o endereço pode não estar disponível até que ocorra na Soquete E/S.

Observações para Bluetooth

Chama um servidor RFCOMM Winsock getsockname Para determinar o número canalizar atribuído ao seu Soquete.

Requirements

Header winsock2.h
Library Ws2.lib
Windows Embedded CE Windows CE 1.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

accept (Windows Sockets)
bind (Windows Sockets)
connect (Windows Sockets)
getpeername (Windows Sockets)
socket (Windows Sockets)
WSAGetLastError
WSAStartup