Condividi tramite


Funzione EnumDisplaySettingsExA (winuser.h)

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

Questa funzione differisce da EnumDisplaySettings in cui è presente un parametro dwFlags .

Nota Le app che si progettano per la destinazione 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 Windows 8; Windows 8 emula queste modalità ma viene ancora 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 visualizzato sulla modalità grafica in cui 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 visualizzato attualmente archiviato nel Registro di sistema.
 

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

Quando si chiama 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 dmFieldsdell'oggetto lpDevMode e uno o più membri della struttura DEVMODE . Per determinare quali membri sono stati impostati dalla chiamata a EnumDisplaySettingsEx, controllare la maschera di bit dmFields . 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 monitoraggi correnti.
EDS_ROTATEDMODE
Se impostato, 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.

Commenti

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

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 preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winuser.h (include Windows.h)
Libreria User32.lib
DLL User32.dll
Set di API ext-ms-win-ntuser-sysparams-ext-l1-1-1 (introdotta in Windows 10, versione 10.0.14393)

Vedi anche

ChangeDisplaySettings

Changedisplaysettingsex

CreateDC

CreateDesktop

DEVMODE

DISPLAY_DEVICE

Funzioni del contesto del dispositivo

Panoramica dei contesti del dispositivo

EnumDisplayDevices

EnumDisplaySettings