EnumDisplaySettings: Unterschied zwischen den Versionen
Aus API-Wiki
K (vb) |
|||
(2 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
Die Funktion liefert Informationen über Anzeige-Einstellungen. Sie bietet die Möglichkeit die aktuellen Bildschirmeinstellungen wie Auflösung und Wiederholfrequenz auszulesen. | 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" _ | + | <syntaxhighlight lang="vb"> |
− | + | Declare Function EnumDisplaySettings Lib "user32" _ | |
− | + | Alias "EnumDisplaySettingsA" ( _ | |
− | + | ByVal lpszDeviceName As Long, _ | |
+ | ByVal iModeNum As Long, _ | ||
+ | ByRef lpDevMode As DEVMODE) As Long</syntaxhighlight> | ||
===Parameter=== | ===Parameter=== | ||
Zeile 13: | Zeile 15: | ||
''iModeNum'' | ''iModeNum'' | ||
:Eine Ganzzahl, die die Nummer des Ausgabegerätes angibt. | :Eine Ganzzahl, die die Nummer des Ausgabegerätes angibt. | ||
− | :Eine der Konstanten ENUM_CURRENT_SETTINGS oder ENUM_REGISTRY_SETTINGS, | + | :Eine der Konstanten ENUM_CURRENT_SETTINGS oder ENUM_REGISTRY_SETTINGS, die angibt, ob die aktuell gesetzten oder die in der Registry hinterlegten und beim nächsten Systemstart gesetzten Werte ausgelesen werden. |
''lpDevMode'' | ''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. | + | :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=== | ===Rückgabe=== | ||
Zeile 23: | Zeile 25: | ||
===Beispiel=== | ===Beispiel=== | ||
− | <vb>Dim retval As Integer | + | <syntaxhighlight lang="vb">Dim retval As Integer |
Dim iDevMode As Integer | Dim iDevMode As Integer | ||
Dim DevM As DEVMODE | Dim DevM As DEVMODE | ||
Zeile 32: | Zeile 34: | ||
Debug.Print DevM.dmPelsWidth & " x " & DevM.dmPelsHeight & " @ " & DevM.dmDisplayFrequency & " Hz" | Debug.Print DevM.dmPelsWidth & " x " & DevM.dmPelsHeight & " @ " & DevM.dmDisplayFrequency & " Hz" | ||
iDevMode = iDevMode + 1 | iDevMode = iDevMode + 1 | ||
− | Loop While retval <> 0</ | + | Loop While retval <> 0</syntaxhighlight> |
===Verweise=== | ===Verweise=== |
Aktuelle Version vom 7. Oktober 2016, 22:22 Uhr
Die Funktion liefert Informationen über Anzeige-Einstellungen. Sie bietet die Möglichkeit die aktuellen Bildschirmeinstellungen wie Auflösung und Wiederholfrequenz auszulesen.
Declare Function EnumDisplaySettings Lib "user32" _
Alias "EnumDisplaySettingsA" ( _
ByVal lpszDeviceName As Long, _
ByVal iModeNum As Long, _
ByRef lpDevMode As DEVMODE) As Long
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, die 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
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