Retrieves information about one of the graphics modes for a display device
#include <WinAPIGdi.au3>
_WinAPI_EnumDisplaySettings ( $sDevice, $iMode )
$sDevice | The display device about whose graphics mode the function will obtain information. An empty string specifies the current display device on the computer on which the calling process is running. |
$iMode | The type of information to be retrieved. This value can be a graphics mode index or one of the following values: $ENUM_CURRENT_SETTINGS $ENUM_REGISTRY_SETTINGS The graphics mode indexes start at zero. To obtain information for all of a display device's graphics modes, make a series of calls to _WinAPI_EnumDisplaySettings(). Set $iMode to zero for the first call, and increment $iMode by one for each subsequent call. Continue calling the function until the return value is zero. When you call _WinAPI_EnumDisplaySettings() with $iMode set to zero, the operating system initializes and caches information about the display device. When you call _WinAPI_EnumDisplaySettings() with $iMode set to a non-zero value, the function returns the information that was cached the last time the function was called with $iMode set to zero. |
Success: | The array containing the following information: [0] - The width, in pixels, of the visible device surface. [1] - The height, in pixels, of the visible device surface. [2] - The color resolution, in bits per pixel, of the display device. [3] - The frequency, in hertz (cycles per second), of the display device in a particular mode. [4] - The device's display mode ($DM_*). |
Failure: | Sets the @error flag to non-zero. |
Search EnumDisplaySettings in MSDN Library.
#include <APIGdiConstants.au3>
#include <WinAPIGdi.au3>
Local $i = 0, $aData
While 1
$aData = _WinAPI_EnumDisplaySettings('', $i)
If IsArray($aData) Then
ConsoleWrite($aData[0] & ' x ' & $aData[1] & ' x ' & $aData[2] & ' bit' & @CRLF)
Else
ExitLoop
EndIf
$i += 1
WEnd
$aData = _WinAPI_EnumDisplaySettings('', $ENUM_CURRENT_SETTINGS)
ConsoleWrite('-------------------------------' & @CRLF)
ConsoleWrite('Current settings: ' & $aData[0] & ' x ' & $aData[1] & ' x ' & $aData[2] & ' bit' & @CRLF)