Compartir a través de


Función EnumDisplaySettingsExA (winuser.h)

La función EnumDisplaySettingsEx recupera información sobre uno de los modos gráficos de un dispositivo de visualización. Para recuperar información de todos los modos gráficos de un dispositivo de visualización, realice una serie de llamadas a esta función.

Esta función difiere de EnumDisplaySettings en que hay un parámetro dwFlags .

Nota Aplicaciones que diseñes para tener Como destino Windows 8 y versiones posteriores ya no pueden consultar ni establecer modos de visualización inferiores a 32 bits por píxel (bpp); estas operaciones producirán un error. Estas aplicaciones tienen un manifiesto de compatibilidad que tiene como destino Windows 8. Windows 8 todavía admite modos de color de 8 y 16 bits para aplicaciones de escritorio creadas sin un manifiesto de Windows 8; Windows 8 emula estos modos, pero sigue funcionando en modo de color de 32 bits.
 

Sintaxis

BOOL EnumDisplaySettingsExA(
  [in]  LPCSTR   lpszDeviceName,
  [in]  DWORD    iModeNum,
  [out] DEVMODEA *lpDevMode,
  [in]  DWORD    dwFlags
);

Parámetros

[in] lpszDeviceName

Puntero a una cadena terminada en null que especifica el dispositivo para mostrar sobre el modo gráfico en el que la función obtendrá información.

Este parámetro es NULL o un DISPLAY_DEVICE.DeviceName devuelto desde EnumDisplayDevices. Un valor null especifica el dispositivo de visualización actual en el equipo en el que se ejecuta el subproceso que realiza la llamada.

[in] iModeNum

Indica el tipo de información que se va a recuperar. Este valor puede ser un índice de modo gráfico o uno de los siguientes valores.

Valor Significado
ENUM_CURRENT_SETTINGS
Recupere la configuración actual del dispositivo para mostrar.
ENUM_REGISTRY_SETTINGS
Recupere la configuración del dispositivo para mostrar que se almacena actualmente en el Registro.
 

Los índices del modo gráfico comienzan en cero. Para obtener información de todos los modos gráficos de un dispositivo de visualización, realice una serie de llamadas a EnumDisplaySettingsEx, como se indica a continuación: Establezca iModeNum en cero para la primera llamada e incremente iModeNum por una para cada llamada subsiguiente. Continúe llamando a la función hasta que el valor devuelto sea cero.

Al llamar a EnumDisplaySettingsEx con iModeNum establecido en cero, el sistema operativo inicializa y almacena en caché información sobre el dispositivo para mostrar. Al llamar a EnumDisplaySettingsEx con iModeNum establecido en un valor distinto de cero, la función devuelve la información almacenada en caché la última vez que se llamó a la función con iModeNum establecido en cero.

[out] lpDevMode

Puntero a una estructura DEVMODE en la que la función almacena información sobre el modo gráfico especificado. Antes de llamar a EnumDisplaySettingsEx, establezca el miembro dmSize en sizeof (DEVMODE) y establezca el miembro dmDriverExtra para indicar el tamaño, en bytes, del espacio adicional disponible para recibir datos del controlador privado.

La función EnumDisplaySettingsEx rellenará el miembro dmFields del lpDevMode y uno o varios miembros de la estructura DEVMODE. Para determinar qué miembros estableció la llamada a EnumDisplaySettingsEx, inspeccione el dmFields máscara de bits. Algunos de los campos que normalmente rellena esta función incluyen:

  • dmBitsPerPel de
  • dmPelsWidth
  • dmPelsHeight
  • dmDisplayFlags
  • dmDisplayFrequency
  • dmPosition
  • dmDisplayOrientation

[in] dwFlags

Este parámetro puede ser el siguiente valor.

Valor Significado
EDS_RAWMODE
Si se establece, la función devolverá todos los modos de gráficos notificados por el controlador del adaptador, independientemente de las funcionalidades de supervisión. De lo contrario, solo devolverá modos compatibles con monitores actuales.
EDS_ROTATEDMODE
Si se establece, la función devolverá modos gráficos en todas las orientaciones. De lo contrario, solo devolverá modos que tengan la misma orientación que la establecida actualmente para la pantalla solicitada.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es distinto de cero.

Si se produce un error en la función, el valor devuelto es cero.

Observaciones

Se produce un error en la función si iModeNum es mayor que el índice del último modo gráfico del dispositivo de visualización. Como se indica en la descripción del parámetro iModeNum, puede usar este comportamiento para enumerar todos los modos gráficos de un dispositivo de visualización.

Virtualización de PPP de

Esta API no participa en la virtualización de PPP. La salida dada siempre está en términos de píxeles físicos y no está relacionada con el contexto de llamada.

Nota

El encabezado winuser.h define EnumDisplaySettingsEx 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 [solo aplicaciones de escritorio]
servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de winuser.h (incluya Windows.h)
biblioteca de User32.lib
DLL de User32.dll
conjunto de API de ext-ms-win-ntuser-sysparams-ext-l1-1-1 (introducido en Windows 10, versión 10.0.14393)

Consulte también

ChangeDisplaySettings

ChangeDisplaySettingsEx

CreateDC

CreateDesktop

DEVMODE

DISPLAY_DEVICE

funciones de contexto de dispositivo

Información general sobre contextos de dispositivo de

EnumDisplayDevices

EnumDisplaySettings