EnumDisplaySettings

Aus API-Wiki
Wechseln zu: Navigation, Suche

Die Funktion liefert Informationen über Anzeige-Einstellungen. Sie bietet die Möglichkeit die aktuellen Bildschirmeinstellungen wie Auflösung und Wiederholfrequenz auszulesen.

<vb>Declare Function EnumDisplaySettings Lib "user32" _

               Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName _
               As Long, ByVal iModeNum As Long, lpDevMode As Any) _
               As Boolean</vb>

Parameter

lpszDeviceName

Ein Zeiger auf einen nullterminierten String, der das Ausgabegerät bezeichnet, desses Eigenschaften ausgelesen werden sollen. 0 für das Ausgabegerät welches der aktuelle Thread nutzt.

iModeNum

Eine Ganzzahl, die die Nummer des Ausgabegerätes angibt.
Eine der Konstanten ENUM_CURRENT_SETTINGS oder ENUM_REGISTRY_SETTINGS, di angibt, ob die aktuell gesetzten oder die in der Registry hinterlegten und beim nächsten Systemstart gesetzten Werte ausgelesen werden.

lpDevMode

Einen Zeiger auf eine DEVMODE-Struktur, deren Member dmSize und dmDriverExtra initialisiert sein müssen. dmSize muss die Größe der initialisierten Variable in Bytes enthalten, dmDriverExtra gibt an, wieviele Bytes extra initialisiert wurden, um zusätzliche Treiberinformationen aufzunehmen; sollte in VB 0 sein.

Rückgabe

Die Funktion gibt einen Wert des Types Long ungleich 0 bei Erfolg, den Wert 0 bei Misserfolg zurück. Der Rückgabewert 0 weist bei einer angegebenen Gerätenummer (2. Parameter) darauf hin, dass kein zugehöriges Ausgabegerät existiert. Die Funktion setzt die Eigenschaften: dmBitsPerPel, dmPelsWidth, dmPelsHeight, dmDisplayFlags, dmDisplayFrequency in der übergebenen DEVMODE-Struktur.

Beispiel

<vb>Dim retval As Integer Dim iDevMode As Integer Dim DevM As DEVMODE iDevMode = 0

Do

   retval = EnumDisplaySettings(0, iDevMode, DevM)
   Debug.Print DevM.dmPelsWidth & " x " & DevM.dmPelsHeight & " @ " & DevM.dmDisplayFrequency & " Hz"
   iDevMode = iDevMode + 1

Loop While retval <> 0</vb>

Verweise

Quellen

Verwandte Funktionen