Función getservbyname (winsock.h)
La función getservbyname recupera la información del servicio correspondiente a un nombre de servicio y un protocolo.
Sintaxis
servent * getservbyname(
[in] const char *name,
[in] const char *proto
);
Parámetros
[in] name
Puntero a un nombre de servicio terminado en null.
[in] proto
Puntero a un nombre de protocolo terminado en null. Si este puntero es NULL, la función getservbyname devuelve la primera entrada de servicio donde name coincide con el miembro s_name de la estructura servent o el miembro s_aliases de la estructura servent . De lo contrario, getservbyname coincide con el nombre y el proto.
Valor devuelto
Si no se produce ningún error, getservbyname devuelve un puntero a la estructura servent . De lo contrario, devuelve un puntero nulo y se puede recuperar un número de error específico llamando a WSAGetLastError.
Código de error | Significado |
---|---|
Debe producirse una llamada WSAStartup correcta antes de usar esta función. | |
Error en el subsistema de red. | |
No se encontró el servicio de respuesta autoritativa. | |
No se encontró un servicio no autenticado o un error del servidor. | |
Errores irrecuperables, la base de datos de servicios no es accesible. | |
Nombre válido, sin registro de datos del tipo solicitado. | |
Una llamada de Bloqueo de Windows Sockets 1.1 está en curso o el proveedor de servicios sigue procesando una función de devolución de llamada. | |
Se canceló una llamada de Bloqueo de Windows Socket 1.1 a través de WSACancelBlockingCall. |
Comentarios
La función getservbyname devuelve un puntero a la estructura servent que contiene los nombres y el número de servicio que coinciden con la cadena en el parámetro name . Todas las cadenas terminan en null.
El puntero que se devuelve apunta a la estructura servent asignada por la biblioteca de Windows Sockets. La aplicación nunca debe intentar modificar esta estructura o liberar cualquiera de sus componentes. Además, solo se asigna una copia de esta estructura por subproceso, por lo que la aplicación debe copiar cualquier información que necesite antes de emitir cualquier otra llamada de función de Windows Sockets.
Windows Phone 8: esta función es compatible con las aplicaciones de Windows Phone Store en Windows Phone 8 y versiones posteriores.
Windows 8.1 y Windows Server 2012 R2: esta función es compatible con las aplicaciones de la Tienda Windows en Windows 8.1, Windows Server 2012 R2 y versiones posteriores.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8.1, Windows Vista [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | winsock.h (incluya Winsock2.h) |
Library | Ws2_32.lib |
Archivo DLL | Ws2_32.dll |