Compartir a través de


Función GetDisplayConfigBufferSizes (winuser.h)

La función GetDisplayConfigBufferSizes recupera el tamaño de los búferes necesarios para llamar a la función QueryDisplayConfig .

Sintaxis

LONG GetDisplayConfigBufferSizes(
  [in]  UINT32 flags,
  [out] UINT32 *numPathArrayElements,
  [out] UINT32 *numModeInfoArrayElements
);

Parámetros

[in] flags

Tipo de información que se va a recuperar. El valor del parámetro Flags debe ser uno de los valores siguientes.

QDC_ALL_PATHS

El autor de la llamada solicita a los tamaños de tabla que contengan todas las combinaciones de ruta de acceso posibles.

QDC_ONLY_ACTIVE_PATHS

El autor de la llamada solicita a los tamaños de tabla que contengan solo rutas de acceso activas.

QDC_DATABASE_CURRENT

El autor de la llamada solicita a los tamaños de tabla que contengan las rutas de acceso activas, tal como se define en la base de datos de persistencia para los monitores conectados actualmente.

[out] numPathArrayElements

Puntero a una variable que recibe el número de elementos de la tabla de información de ruta de acceso. A continuación, se usa el valor del parámetro pNumPathArrayElements mediante una llamada posterior a la función QueryDisplayConfig . Este parámetro no puede ser NULL.

[out] numModeInfoArrayElements

Puntero a una variable que recibe el número de elementos de la tabla de información en modo. A continuación, se usa el valor del parámetro pNumModeInfoArrayElements mediante una llamada posterior a la función QueryDisplayConfig . Este parámetro no puede ser NULL.

Valor devuelto

La función devuelve uno de los siguientes códigos de retorno.

Código devuelto Descripción
ERROR_SUCCESS
La función se ha realizado correctamente.
ERROR_INVALID_PARAMETER
La combinación de parámetros y marcas que se especifican no es válida.
ERROR_NOT_SUPPORTED
El sistema no ejecuta un controlador de gráficos escrito según el modelo de controlador de pantalla de Windows (WDDM). La función solo se admite en un sistema con un controlador WDDM en ejecución.
ERROR_ACCESS_DENIED
El llamador no tiene acceso a la sesión de consola. Este error se produce si el proceso de llamada no tiene acceso al escritorio actual o se ejecuta en una sesión remota.
ERROR_GEN_FAILURE
Se ha producido un error no especificado.

Comentarios

Dada la configuración actual de la ruta de acceso de presentación y las marcas solicitadas, GetDisplayConfigBufferSizes devuelve el tamaño de las tablas de ruta de acceso y modo necesarias para almacenar la información. GetDisplayConfigBufferSizes puede devolver valores ligeramente mayores de los que realmente son necesarios porque determina que todas las rutas de acceso de origen y destino son válidas; mientras que el controlador podría aplicar algunas restricciones a las posibles combinaciones.

Como GetDisplayConfigBufferSizes solo puede determinar el tamaño de matriz necesario de ese momento en el tiempo, es posible que entre las llamadas a GetDisplayConfigBufferSizes y QueryDisplayConfig la configuración del sistema haya cambiado y los tamaños de matriz proporcionados ya no sean suficientes para almacenar los nuevos datos de ruta de acceso.

Si un llamador es consciente de que debe habilitar orígenes y destinos adicionales, el autor de la llamada puede asignar una matriz de información de modo más grande que se devuelve de GetDisplayConfigBufferSizes para que tenga el espacio para agregar los modos de origen y destino adicionales después de llamar a QueryDisplayConfig y antes de llamar a SetDisplayConfig.

Ejemplos

Consulte QueryDisplayConfig para obtener un ejemplo de GetDisplayConfigBufferSizes.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows.
Plataforma de destino Universal
Encabezado winuser.h (incluir Windows.h)
Library User32.lib; OneCoreUAP.lib en Windows 10
Archivo DLL User32.dll
Conjunto de API ext-ms-win-ntuser-sysparams-ext-l1-1-1 (introducido en Windows 10, versión 10.0.14393)

Consulte también

QueryDisplayConfig

SetDisplayConfig