Função getservbyname (winsock2.h)
A função getservbyname recupera informações de serviço correspondentes a um nome de serviço e protocolo.
Sintaxe
servent *WSAAPI getservbyname(
[in] const char *name,
[in] const char *proto
);
Parâmetros
[in] name
Um ponteiro para um nome de serviço terminado em nulo.
[in] proto
Um ponteiro para um nome de protocolo terminado em nulo. Se esse ponteiro for NULL, a função getservbyname retornará a primeira entrada de serviço em que name corresponde ao membro s_name da estrutura servent ou ao membro s_aliases da estrutura servent . Caso contrário, getservbyname corresponde ao nome e ao proto.
Retornar valor
Se nenhum erro ocorrer, getservbyname retornará um ponteiro para a estrutura servent . Caso contrário, ele retornará um ponteiro nulo e um número de erro específico poderá ser recuperado chamando WSAGetLastError.
Código do erro | Significado |
---|---|
Uma chamada WSAStartup bem-sucedida deve ocorrer antes de usar essa função. | |
O subsistema de rede falhou. | |
Serviço de Resposta Autoritativa não encontrado. | |
Um Serviço não autoritativo não encontrado ou uma falha de servidor. | |
Erros não recuperáveis, o banco de dados de serviços não está acessível. | |
Nome válido, nenhum registro de dados do tipo solicitado. | |
Uma chamada de bloqueio do Windows Sockets 1.1 está em andamento ou o provedor de serviços ainda está processando uma função de retorno de chamada. | |
Uma chamada de bloqueio do Windows Socket 1.1 foi cancelada por meio de WSACancelBlockingCall. |
Comentários
A função getservbyname retorna um ponteiro para a estrutura servent que contém os nomes e o número de serviço que correspondem à cadeia de caracteres no parâmetro name . Todas as cadeias de caracteres são terminadas em nulo.
O ponteiro retornado aponta para a estrutura servent alocada pela biblioteca do Windows Sockets. O aplicativo nunca deve tentar modificar essa estrutura ou liberar nenhum de seus componentes. Além disso, apenas uma cópia dessa estrutura é alocada por thread, portanto, o aplicativo deve copiar todas as informações necessárias antes de emitir qualquer outra chamada de função do Windows Sockets.
Windows Phone 8: essa função tem suporte para aplicativos da Windows Phone Store no Windows Phone 8 e posterior.
Windows 8.1 e Windows Server 2012 R2: essa função tem suporte para aplicativos da Windows Store em Windows 8.1, Windows Server 2012 R2 e posteriores.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 8.1, Windows Vista [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | winsock2.h (inclua Winsock2.h) |
Biblioteca | Ws2_32.lib |
DLL | Ws2_32.dll |