システムのディスプレイデバイスの情報を取得します。
#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