thesnow 发表于 2011-2-1 20:43:50

枚举系统支持的屏幕分辨率,色深,刷新率


;===============================================================================
;
; 函数名称:                _EnumScreenRes()
; 详细信息:                枚举本机支持的屏幕分辨率刷新率.
; 版本:                        1.0.0.1
; 参数:          
; 需求                   AutoIt 测试版 > 3.3.5.0 以上
; 返回值:                返回一个数组,数组元素0为返回的元素数量.
; 论坛:                       
; 作者:                        thesnoW
;
;===============================================================================
Func _EnumScreenRes()
        Local $aRet
        Local $iModeNum=0
        While 1
                Local $DEVMODE = DllStructCreate("byte;int;byte;int")
                Local $B = DllCall("user32.dll", "int", "EnumDisplaySettings", "ptr", 0, "long", $iModeNum, "ptr", DllStructGetPtr($DEVMODE))
                If @error Then
                        $B = 0
                        ExitLoop
                EndIf
                If $B <> 0 Then
                        _ArrayAdd($aRet,DllStructGetData($DEVMODE,4,2) & "X" &DllStructGetData($DEVMODE,4,3) & "X" &DllStructGetData($DEVMODE,4,1) & "@"&DllStructGetData($DEVMODE,4,5))
                Else
                        ExitLoop
                EndIf
                $iModeNum+=1
        WEnd
        $aRet=UBound($aRet)-1
        Return $aRet
EndFunc

使用:

$res=_EnumScreenRes()
_ArrayDisplay($res)


如果您使用的版本为SVN版本,如果大于r511,请使用:

#include <ACN_MISC.AU3>
$res=_EnumScreenRes()
_ArrayDisplay($res)

卫和谐 发表于 2011-2-2 07:34:42

是枚举系统的,不是当前显示器的?
这个不知道有什么用?

pcmi 发表于 2011-12-20 21:33:21

不错,记录下,需要时使用

online041 发表于 2014-6-13 14:42:10

不错,记录下,需要时使用

lostcity 发表于 2014-6-16 10:03:34

借来用用看,谢谢先。好用来反馈。

lostcity 发表于 2014-6-16 10:09:35

While 1
                Local $DEVMODE = DllStructCreate("byte;int;byte;int")
                Local $B = DllCall("user32.dll", "int", "EnumDisplaySettings", "ptr", 0, "long", $iModeNum, "ptr", DllStructGetPtr($DEVMODE))
                ConsoleWrite("$Bis"&$B&@CR)

lostcity 发表于 2014-6-16 10:09:48

$Bis
$Bis
$Bis
$aRet is >Exit code: 1    Time: 0.471

jsdn2000 发表于 2016-12-26 19:50:43

是枚举显示器的吧?
页: [1]
查看完整版本: 枚举系统支持的屏幕分辨率,色深,刷新率