Función WSCInstallQOSTemplate (ws2spi.h)

[ Esta función no se admite en Windows Vista ni en versiones posteriores del sistema operativo.

La función WSCInstallQOSTemplate instala la plantilla de QoS especificada en la base de datos de configuración del sistema.

Sintaxis

int WSCInstallQOSTemplate(
  [in] const LPGUID Guid,
  [in] LPWSABUF     QosName,
  [in] LPQOS        Qos
);

Parámetros

[in] Guid

Identificador único global (GUID) para el proveedor de calidad de servicio (QoS).

[in] QosName

Puntero a una estructura WSABUF que contiene el nombre QoS de la plantilla que se va a instalar.

[in] Qos

Puntero a una estructura QOS que especifica la calidad de las especificaciones de flujo de servicio y cualquier información específica del proveedor para la plantilla QoS.

Valor devuelto

Si la función WSCInstallQOSTemplate se realiza correctamente, el valor devuelto es cero. De lo contrario, devuelve uno de los siguientes códigos de error.

Código de error Significado
WSAEFAULT
Uno o varios de los argumentos no están en una parte válida del espacio de direcciones del usuario.
WSAEINVAL
Uno o varios argumentos no son válidos. Este error se devuelve si el proveedor de QoS especificado en el parámetro Guid no es válido o el nombre de plantilla de QoS especificado en el parámetro QosName no es válido. Este error también se devuelve si el contenido de la estructura de plantilla especificada en el parámetro Qos no es válido o está incompleto.
WSAENOBUFS
No se puede asignar memoria para los búferes.
WSANO_RECOVERY
Error irrecuperable. Este error se devuelve en varias condiciones, incluido lo siguiente: el proveedor ya está instalado, el usuario carece de los privilegios administrativos necesarios para escribir en el registro winsock o se produjo un error al crear o instalar una entrada de catálogo.
WSASYSCALLFAILURE
Se ha producido un error en una llamada del sistema que nunca debería producir un error.
WSA_NOT_ENOUGH_MEMORY
Memoria insuficiente disponible. Este error se devuelve cuando no hay memoria suficiente para asignar una nueva entrada de catálogo.

Comentarios

La función WSCInstallQOSTemplate no se admite en Windows Vista y versiones posteriores. Si se llama a esta función en Windows Vista y se devuelve el error.

La función WSCInstallQOSTemplate instala una plantilla de QoS, basada en un nombre de QoS. El autor de la llamada de la función WSCInstallQOSTemplate debe tener los derechos administrativos adecuados para que la llamada se realice correctamente.

La estructura QOS que contiene la configuración de QoS se puede recuperar más adelante llamando a la función WSPGetQOSByName y pasando el nombre de QoS asociado.

La función WSCInstallQOSTemplate instala una plantilla de QoS con nombre que contiene el
Estructura QOS especificada en el parámetro Qos. Si ya existe una plantilla de QoS con el nombre de QoS especificado en el parámetro Qosname , la configuración especificada en el parámetro Qos reemplaza la configuración de la plantilla existente.

Si el parámetro Guid se establece en NULL, la plantilla de QOS instalada se aplica a todos los proveedores de servicios. Si el parámetro Guid no es NULL, la plantilla de QoS instalada solo se aplica al proveedor indicado por el parámetro Guid .

La configuración de la plantilla de QoS se almacena en un almacenamiento no volátil, por lo que las llamadas posteriores a la función WSAGetQOSByName con el mismo nombre de QoS especificado en el parámetro lpQOSName devuelven la misma estructura de QOS que se pasa a la función WSCInstallQOSTemplate .

Windows Sockets 2 incluye un conjunto base de plantillas de QoS. Puede invalidar y reemplazar cualquiera de estas plantillas de QoS o cambiar una plantilla de QoS existente simplemente instalando una nueva plantilla con el nombre existente. No es necesario eliminar una plantilla existente antes de reemplazarla o modificarla. No se puede eliminar el conjunto base de plantillas con nombre QoS incluidas en Windows Sockets 2. Sin embargo, puede eliminar plantillas agregadas posteriormente, quizás por otros proveedores de servicios.

El parámetro Qos apunta a una estructura QOS que puede incluir un búfer que contiene la configuración específica del proveedor en el miembro ProviderSpecific de la estructura QOS . Cualquier configuración específica del proveedor se almacena con la estructura básica de QOS y se devuelve en llamadas posteriores a la función WSAGetQOSByName .

El miembro ProviderSpecific de la estructura QOS se puede establecer incluso si el parámetro Guid está establecido en NULL para instalar una plantilla de QoS global para todos los proveedores de servicios. Tenga en cuenta que esta práctica puede llevar a un proveedor de servicios a omitir el miembro ProviderSpecific de la estructura QOS si el proveedor de servicios no reconoce su contenido. El uso recomendado de la función WSCInstallQOSTemplate es incluir la configuración específica del proveedor en el miembro ProviderSpecific de la estructura QOS solo si la plantilla con nombre se está instalando en un proveedor de servicios determinado (el parámetro Guid no es NULL).

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado ws2spi.h

Consulte también

QOS

WSABUF

WSPGetQOSByName