Function Reference

_WinAPI_EnumDisplayDevices

システムのディスプレイデバイスの情報を取得します。

#Include <WinAPI.au3>
_WinAPI_EnumDisplayDevices($sDevice, $iDevNum)

 

パラメータ

$sDevice デバイス名。
空白の場合、この関数はiDevNumに基づいてマシン上のディスプレイアダプタ情報を返します。
$iDevNum 関心のあるディスプレイデバイスを指定するゼロ始まりのインデックス値

 

返し値

成功: 次のフォーマットの配列:
$aDevice[0] - True
$aDevice[1] - アダプタデバイスまたはモニタデバイスのどちらか
$aDevice[2] - アダプタまたはモニタどちらかの説明
$aDevice[3] - デバイスの状態フラグ:
1 - デバイスはデスクトップの一部です
2 - メインのデスクトップがデバイス上にあります
4 - リモートで描画をおこなっているプリケーションのミラーに使用されている擬似デバイスを表します
8 - デバイスはVGA互換です
16 - デバイスを取り外せます; デバイスはメインディスプレイではありません
32 - デバイスはサポートしている出力デバイスより多くのディスプレイモードを持っています
$aDevice[4] - プラグアンドプレイ識別子の文字列 (Windows 98/ME)
失敗: @errorを設定します。

 

注意

なし。

 

関連

 

こちらも参照

MSDNライブラリでEnumDisplayDevicesを検索して下さい。

 


#AutoIt3Wrapper_Au3Check_Parameters= -d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <WinAPI.au3>
Opt('MustDeclareVars', 1)

_Main()

Func _Main()
    Local $aDevice, $i = 0, $text
    While 1
        $aDevice = _WinAPI_EnumDisplayDevices("", $i)
        If Not $aDevice[0] Then ExitLoop
        $text = "Successful? " & $aDevice[0] & @CRLF
        $text &= "Device (Adapter or Monitor): " & $aDevice[1] & @CRLF
        $text &= "Description (Adapter or Monitor): " & $aDevice[2] & @CRLF
        $text &= "Device State Flag: " & $aDevice[3] & @CRLF
        if BitAND($aDevice[3], 32) then $text &= @TAB & "- The device has more display modes than its output devices support" & @CRLF

        if BitAND($aDevice[3], 16) then $text &= @TAB & "- The device is removable; it cannot be the primary display" & @CRLF
        if BitAND($aDevice[3], 8) then $text &= @TAB & "- The device is VGA compatible" & @CRLF
        if BitAND($aDevice[3], 4) then $text &= @TAB & "- Represents a pseudo device used to mirror application drawing for remoting" & @CRLF
        if BitAND($aDevice[3], 2) then $text &= @TAB & "- The primary desktop is on the device" & @CRLF
        if BitAND($aDevice[3], 1) then $text &= @TAB & "- The device is part of the desktop" & @CRLF

        $text &= "Plug and Play identifier string: " & $aDevice[4] & @CRLF
        MsgBox(0, "", $text)
        $i += 1
    WEnd
EndFunc   ;==>_Main