Obtient des informations sur les périphériques d'affichage d'un système
#include <WinAPIGdiDC.au3>
_WinAPI_EnumDisplayDevices ( $sDevice, $iDevNum )
$sDevice | Nom du périphérique. Si vide, la fonction retourne des informations pour les cartes graphiques de la machine en fonction de $iDevNum. |
$iDevNum | Valeur de l'index, de base 0, qui indique le périphérique d'affichage concerné |
Succès: | Retourne un tableau avec le format suivant: [0] - True [1] - Soit la carte graphique, soit le moniteur [2] - La description de la carte ou du moniteur [3] - Flags d'état du périphérique: 1 - Le périphérique fait partie du bureau 2 - Le bureau principal est sur le périphérique 4 - Représente un pseudo périphérique utilisé pour refléter une application de dessin d'accès distant 8 - Le périphérique est compatible VGA 16 - Le périphérique est amovible; il ne peut pas être le moniteur principal 32 - Le périphérique dispose de plusieurs modes d'affichage que ses périphériques de sortie supportent [4] - Réservé |
Échec: | Définit @error <> 0. |
Consultez EnumDisplayDevices dans la librairie MSDN.
#include <MsgBoxConstants.au3> #include <WinAPIGdiDC.au3> Example() Func Example() Local $i = 0, $sText, $aDevice = _WinAPI_EnumDisplayDevices("", 0) While Not @error And Not $aDevice[0] $sText = "Succès? " & $aDevice[0] & @CRLF $sText &= "Périphérique (Carte ou Moniteur): " & $aDevice[1] & @CRLF $sText &= "Description (Carte ou Moniteur): " & $aDevice[2] & @CRLF $sText &= "Flag d'état du périphérique: " & $aDevice[3] & @CRLF If BitAND($aDevice[3], 32) Then $sText &= @TAB & "- Le périphérique a plusieurs modes d'affichage que ses périphériques de sortie supportent" & @CRLF If BitAND($aDevice[3], 16) Then $sText &= @TAB & "- Le périphérique est amovible; il ne peut pas être l'écran principal" & @CRLF If BitAND($aDevice[3], 8) Then $sText &= @TAB & "- Le périphérique est compatible VGA" & @CRLF If BitAND($aDevice[3], 4) Then $sText &= @TAB & "- Représente un pseudo périphérique utilisé pour refléter des applications de dessin pour un accès distant" & @CRLF If BitAND($aDevice[3], 2) Then $sText &= @TAB & "- Le bureau principal est sur le périphérique" & @CRLF If BitAND($aDevice[3], 1) Then $sText &= @TAB & "- Le périphérique est une partie du bureau" & @CRLF $sText &= "Chaîne d'identification Plug and Play: " & $aDevice[4] & @CRLF MsgBox($MB_SYSTEMMODAL, "", $sText) $i += 1 $aDevice = _WinAPI_EnumDisplayDevices("", $i) WEnd EndFunc ;==>Example