Condividi tramite


Funzione EnumDisplaySettingsExA (winuser.h)

La funzione EnumDisplaySettingsEx recupera informazioni su una delle modalità grafiche per un dispositivo di visualizzazione. Per recuperare informazioni per tutte le modalità grafiche per un dispositivo di visualizzazione, effettuare una serie di chiamate a questa funzione.

Questa funzione è diversa da EnumDisplaySettings in quanto è presente un parametro dwFlags .

Si noti App che si progettano per Windows 8 e versioni successive non possono più eseguire query o impostare modalità di visualizzazione inferiori a 32 bit per pixel (bpp); queste operazioni avranno esito negativo. Queste app hanno un manifesto di compatibilità destinato a Windows 8. Windows 8 supporta ancora le modalità colore a 8 bit e a 16 bit per le app desktop compilate senza un manifesto di Windows 8; Windows 8 emula queste modalità ma viene comunque eseguita in modalità colore a 32 bit.
 

Sintassi

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

Parametri

[in] lpszDeviceName

Puntatore a una stringa con terminazione Null che specifica il dispositivo di visualizzazione su quale modalità grafica la funzione otterrà informazioni.

Questo parametro è NULL o un DISPLAY_DEVICE. DeviceName restituito da EnumDisplayDevices. Un valore NULL specifica il dispositivo di visualizzazione corrente nel computer in cui è in esecuzione il thread chiamante.

[in] iModeNum

Indica il tipo di informazioni da recuperare. Questo valore può essere un indice in modalità grafica o uno dei valori seguenti.

Valore Significato
ENUM_CURRENT_SETTINGS
Recuperare le impostazioni correnti per il dispositivo di visualizzazione.
ENUM_REGISTRY_SETTINGS
Recuperare le impostazioni per il dispositivo di visualizzazione attualmente archiviato nel Registro di sistema.
 

Gli indici della modalità grafica iniziano da zero. Per ottenere informazioni per tutte le modalità grafiche di un dispositivo di visualizzazione, effettuare una serie di chiamate a EnumDisplaySettingsEx, come indicato di seguito: Impostare iModeNum su zero per la prima chiamata e incrementare iModeNum di uno per ogni chiamata successiva. Continuare a chiamare la funzione fino a quando il valore restituito non è zero.

Quando chiami EnumDisplaySettingsEx con iModeNum impostato su zero, il sistema operativo inizializza e memorizza nella cache le informazioni sul dispositivo di visualizzazione. Quando si chiama EnumDisplaySettingsEx con iModeNum impostato su un valore diverso da zero, la funzione restituisce le informazioni memorizzate nella cache l'ultima volta che la funzione è stata chiamata con iModeNum impostata su zero.

[out] lpDevMode

Puntatore a una struttura DEVMODE in cui la funzione archivia informazioni sulla modalità grafica specificata. Prima di chiamare EnumDisplaySettingsEx, impostare il membro dmSize su sizeof (DEVMODE) e impostare il membro dmDriverExtra per indicare le dimensioni, in byte, dello spazio aggiuntivo disponibile per ricevere i dati del driver privato.

La funzione EnumDisplaySettingsEx popola il membro dmFields del lpDevMode e uno o più membri della struttura DEVMODE. Per determinare quali membri sono stati impostati dalla chiamata a EnumDisplaySettingsEx, esaminare dmFields maschera di bit. Alcuni dei campi in genere popolati da questa funzione includono:

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

[in] dwFlags

Questo parametro può essere il valore seguente.

Valore Significato
EDS_RAWMODE
Se impostata, la funzione restituirà tutte le modalità grafiche segnalate dal driver dell'adattatore, indipendentemente dalle funzionalità di monitoraggio. In caso contrario, restituirà solo le modalità compatibili con i monitor correnti.
EDS_ROTATEDMODE
Se impostata, la funzione restituirà le modalità grafiche in tutti gli orientamenti. In caso contrario, restituirà solo le modalità con lo stesso orientamento di quello attualmente impostato per la visualizzazione richiesta.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero.

Osservazioni

La funzione ha esito negativo se iModeNum è maggiore dell'indice dell'ultima modalità grafica del dispositivo di visualizzazione. Come indicato nella descrizione del parametro iModeNum, è possibile usare questo comportamento per enumerare tutte le modalità grafiche di un dispositivo di visualizzazione.

Virtualizzazione DPI

Questa API non partecipa alla virtualizzazione DPI. L'output specificato è sempre in termini di pixel fisici e non è correlato al contesto chiamante.

Nota

L'intestazione winuser.h definisce EnumDisplaySettingsEx come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione winuser.h (include Windows.h)
libreria User32.lib
dll User32.dll
set di API ext-ms-win-ntuser-sysparams-ext-l1-1-1 (introdotto in Windows 10, versione 10.0.14393)

Vedere anche

ChangeDisplaySettings

ChangeDisplaySettingsEx

CreateDC

CreateDesktop

DEVMODE

DISPLAY_DEVICE

funzioni del contesto di dispositivo

Panoramica dei contesti di dispositivo

EnumDisplayDevices

EnumDisplaySettings