Share via


EnumDisplayDevicesA-Funktion (winuser.h)

Mit der Funktion EnumDisplayDevices können Sie Informationen zu den Anzeigegeräten in der aktuellen Sitzung abrufen.

Syntax

BOOL EnumDisplayDevicesA(
  [in]  LPCSTR           lpDevice,
  [in]  DWORD            iDevNum,
  [out] PDISPLAY_DEVICEA lpDisplayDevice,
  [in]  DWORD            dwFlags
);

Parameter

[in] lpDevice

Ein Zeiger auf den Gerätenamen. Bei NULL gibt die Funktion basierend auf iDevNum Informationen für die Grafikkarten auf dem Computer zurück.

Weitere Informationen finden Sie in den Hinweisen.

[in] iDevNum

Ein Indexwert, der das interessante Anzeigegerät angibt.

Das Betriebssystem identifiziert jedes Anzeigegerät in der aktuellen Sitzung mit einem Indexwert. Bei den Indexwerten handelt es sich um aufeinanderfolgende ganze Zahlen, die bei 0 beginnen. Wenn die aktuelle Sitzung z. B. über drei Anzeigegeräte verfügt, werden diese durch die Indexwerte 0, 1 und 2 angegeben.

[out] lpDisplayDevice

Ein Zeiger auf eine DISPLAY_DEVICE Struktur, die Informationen über das von iDevNum angegebene Anzeigegerät empfängt.

Bevor Sie EnumDisplayDevices aufrufen, müssen Sie das cb-Element von DISPLAY_DEVICE auf die Größe (in Bytes) von DISPLAY_DEVICE initialisieren.

[in] dwFlags

Legen Sie dieses Flag auf EDD_GET_DEVICE_INTERFACE_NAME (0x00000001) fest, um den Geräteschnittstellennamen für GUID_DEVINTERFACE_MONITOR abzurufen, der vom Betriebssystem auf Monitorbasis registriert wird. Der Wert wird im DeviceID-Member der DISPLAY_DEVICE-Struktur platziert, die in lpDisplayDevice zurückgegeben wird. Der resultierende Geräteschnittstellenname kann mit SetupAPI-Funktionen verwendet werden und dient als Bindeglied zwischen GDI-Monitorgeräten und SetupAPI-Monitorgeräten.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Die Funktion schlägt fehl, wenn iDevNum größer als der größte Geräteindex ist.

Hinweise

Um alle Anzeigegeräte in der aktuellen Sitzung abzufragen, rufen Sie diese Funktion in einer Schleife auf, beginnend mit dem Festlegen von iDevNum auf 0, und erhöhen Sie iDevNum , bis die Funktion fehlschlägt. Um alle Anzeigegeräte auf dem Desktop auszuwählen, verwenden Sie nur die Anzeigegeräte, die das DISPLAY_DEVICE_ATTACHED_TO_DESKTOP-Flag in der DISPLAY_DEVICE Struktur aufweisen.

Rufen Sie EnumDisplayDevices auf, um Informationen zum Anzeigeadapter abzurufen, wobei lpDevice auf NULL festgelegt ist. Beispiel: DISPLAY_DEVICE. DeviceString enthält den Adapternamen.

Um Informationen zu einem Anzeigemonitor abzurufen, rufen Sie zuerst EnumDisplayDevices auf , wobei lpDevice auf NULL festgelegt ist. Rufen Sie dann EnumDisplayDevices auf , wobei lpDevice auf DISPLAY_DEVICE festgelegt ist. DeviceName ab dem ersten Aufruf von EnumDisplayDevices und mit festgelegtem iDevNum auf Null. Dann DISPLAY_DEVICE. DeviceString ist der Monitorname.

Um alle Monitorgeräte abzufragen, die einem Adapter zugeordnet sind, rufen Sie EnumDisplayDevices in einer Schleife auf, wobei lpDevice auf den Adapternamen festgelegt ist, iDevNum auf start bei 0 und iDevNum auf Inkrement festgelegt ist, bis die Funktion fehlschlägt. Beachten Sie, dass DISPLAY_DEVICE. DeviceName ändert sich mit jedem Aufruf für Monitorinformationen. Daher müssen Sie den Adapternamen speichern. Die Funktion schlägt fehl, wenn keine Monitore mehr für den Adapter vorhanden sind.

Hinweis

Der winuser.h-Header definiert EnumDisplayDevices als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code 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
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h (einschließlich Windows.h)
Bibliothek User32.lib
DLL User32.dll
APIs ext-ms-win-ntuser-sysparams-ext-l1-1-1 (eingeführt in Windows 10, Version 10.0.14393)

Weitere Informationen

ChangeDisplaySettings

ChangeDisplaySettingsEx

CreateDC

DEVMODE

DISPLAY_DEVICE

Gerätekontextfunktionen

Übersicht über Gerätekontexte

EnumDisplaySettings