EnumDisplaySettingsA-Funktion (winuser.h)
Die EnumDisplaySettings--Funktion ruft Informationen zu einem der Grafikmodi für ein Anzeigegerät ab. Um Informationen für alle Grafikmodi eines Anzeigegeräts abzurufen, führen Sie eine Reihe von Aufrufen dieser Funktion aus.
Syntax
BOOL EnumDisplaySettingsA(
[in] LPCSTR lpszDeviceName,
[in] DWORD iModeNum,
[out] DEVMODEA *lpDevMode
);
Parameter
[in] lpszDeviceName
Ein Zeiger auf eine mit Null beendete Zeichenfolge, die das Anzeigegerät angibt, über dessen Grafikmodus die Funktion Informationen abruft.
Dieser Parameter ist entweder NULL- oder ein DISPLAY_DEVICE.DeviceName von EnumDisplayDeviceszurückgegeben. Ein NULL- wert gibt das aktuelle Anzeigegerät auf dem Computer an, auf dem der aufrufende Thread ausgeführt wird.
[in] iModeNum
Der Typ der abzurufenden Informationen. Dieser Wert kann ein Grafikmodusindex oder einer der folgenden Werte sein.
Grafikmodusindizes beginnen bei Null. Um Informationen für alle Grafikmodi eines Anzeigegeräts zu erhalten, führen Sie eine Reihe von Aufrufen an EnumDisplaySettingswie folgt aus: Legen Sie iModeNum für den ersten Aufruf auf Null fest, und erhöhen Sie iModeNum um einen für jeden nachfolgenden Aufruf. Fahren Sie mit dem Aufrufen der Funktion fort, bis der Rückgabewert null ist.
Wenn Sie EnumDisplaySettings aufrufen, wobei iModeNum auf Null festgelegt ist, initialisiert und speichert das Betriebssystem Informationen zum Anzeigegerät zwischen. Wenn Sie EnumDisplaySettings aufrufen, wobei iModeNum- auf einen Wert ungleich Null festgelegt wurde, gibt die Funktion die Informationen zurück, die beim letzten Aufruf der Funktion mit iModeNum auf Null zwischengespeichert wurden.
[out] lpDevMode
Ein Zeiger auf eine DEVMODE- Struktur, in der die Funktion Informationen zum angegebenen Grafikmodus speichert. Legen Sie vor dem Aufrufen EnumDisplaySettingsdas dmSize Member auf sizeof(DEVMODE)
fest, und legen Sie den dmDriverExtra--Member fest, um die Größe des zusätzlichen Speicherplatzes anzugeben, der für den Empfang privater Treiberdaten verfügbar ist.
Die EnumDisplaySettings--Funktion legt Werte für die folgenden fünf DEVMODE--Member fest:
- dmBitsPerPel-
- dmPelsWidth-
- dmPelsHeight-
- dmDisplayFlags-
- dmDisplayFrequency
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlschlägt, ist der Rückgabewert null.
Bemerkungen
Die Funktion schlägt fehl, wenn iModeNum größer als der Index des letzten Grafikmodus des Anzeigegeräts ist. Wie in der Beschreibung des iModeNum-Parameters erwähnt, können Sie dieses Verhalten verwenden, um alle Grafikmodi eines Anzeigegeräts aufzulisten.
DPI-Virtualisierung
Diese API nimmt nicht an der DPI-Virtualisierung teil. Die angegebene Ausgabe entspricht immer physischen Pixeln und ist nicht mit dem aufrufenden Kontext verknüpft.Anmerkung
Der winuser.h-Header definiert EnumDisplaySettings als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 Professional [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | winuser.h (enthalten Windows.h) |
Library | User32.lib |
DLL- | User32.dll |
API-Satz | ext-ms-win-ntuser-sysparams-ext-l1-1-0 (eingeführt in Windows 8) |
Siehe auch
übersicht über Gerätekontexte