Compartir a través de


Función WSAGetServiceClassInfoA (winsock2.h)

La función WSAGetServiceClassInfo recupera la información de clase (esquema) relativa a una clase de servicio especificada de un proveedor de espacio de nombres especificado.

Sintaxis

INT WSAAPI WSAGetServiceClassInfoA(
  [in]      LPGUID                 lpProviderId,
  [in]      LPGUID                 lpServiceClassId,
  [in, out] LPDWORD                lpdwBufSize,
  [out]     LPWSASERVICECLASSINFOA lpServiceClassInfo
);

Parámetros

[in] lpProviderId

Puntero a un GUID que identifica un proveedor de espacio de nombres específico.

[in] lpServiceClassId

Puntero a un GUID que identifica la clase de servicio.

[in, out] lpdwBufSize

En la entrada, el número de bytes contenidos en el búfer al que apunta el parámetro lpServiceClassInfo.

En la salida, si se produce un error en la función y el error es WSAEFAULT, este parámetro especifica el tamaño mínimo, en bytes, del búfer al que apunta lpServiceClassInfo necesario para recuperar el registro.

[out] lpServiceClassInfo

Puntero a una estructura WSASERVICECLASSINFO que contiene la información de clase de servicio del proveedor de espacio de nombres indicado para la clase de servicio especificada.

Valor devuelto

El valor devuelto es cero si el WSAGetServiceClassInfo se realizó correctamente. De lo contrario, se devuelve el valor SOCKET_ERROR y se puede recuperar un número de error específico llamando a WSAGetLastError.

Código de error Significado
WSA_NOT_ENOUGH_MEMORY
No había memoria suficiente para realizar la operación.
WSAEACCES
La rutina de llamada no tiene privilegios suficientes para acceder a la información.
WSAEFAULT
El búfer al que apunta el parámetro lpServiceClassInfo es demasiado pequeño para contener un WSASERVICECLASSINFOW. La aplicación debe pasar un búfer mayor.
WSAEINVAL
El identificador de clase de servicio especificado o el identificador del proveedor del espacio de nombres no es válido. Este error se devuelve si ellpProviderId , lpServiceClassId, lpdwBufSizeo parámetros lpServiceClassInfo son NULL.
WSAEOPNOTSUPP
No se admite la operación para el tipo de objeto al que se hace referencia. Algunos proveedores de espacios de nombres que no admiten la obtención de información de clase de servicio devuelven este error.
WSANO_DATA
El nombre solicitado es válido, pero no se encontró ningún dato del tipo solicitado.
WSANOTINITIALISED
No se ha inicializado el WS2_32.DLL. La aplicación debe llamar primero a WSAStartup antes de llamar a cualquier función de Windows Sockets.
WSATYPE_NOT_FOUND
No se encontró la clase especificada.

Observaciones

La función WSAGetServiceClassInfo recupera información de clase de servicio de un proveedor de espacios de nombres. Es posible que la información de clase de servicio recuperada de un proveedor de espacios de nombres determinado no sea el conjunto completo de información de clase que se especificó cuando se instaló la clase de servicio. Los proveedores de espacios de nombres individuales solo son necesarios para conservar la información de clase de servicio que se aplica a los espacios de nombres que admiten. Consulte la sección estructuras de datos de clase de servicio para obtener más información.

Nota

El encabezado winsock2.h define WSAGetServiceClassInfo como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP]
servidor mínimo admitido Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP]
de la plataforma de destino de Windows
encabezado de winsock2.h
biblioteca de Ws2_32.lib
DLL de Ws2_32.dll

Consulte también

estructuras de datos de clase de servicio

WSAInstallServiceClass

WSASERVICECLASSINFOW de

WSAStartup

funciones winsock

de referencia de Winsock