EnumDisplayDevicesA, fonction (winuser.h)

La fonction EnumDisplayDevices vous permet d’obtenir des informations sur les périphériques d’affichage dans la session active.

Syntaxe

BOOL EnumDisplayDevicesA(
  [in]  LPCSTR           lpDevice,
  [in]  DWORD            iDevNum,
  [out] PDISPLAY_DEVICEA lpDisplayDevice,
  [in]  DWORD            dwFlags
);

Paramètres

[in] lpDevice

Pointeur vers le nom de l’appareil. Si la valeur est NULL, la fonction retourne des informations pour la ou les cartes d’affichage sur l’ordinateur, en fonction de iDevNum.

Pour plus d'informations, consultez la section Notes.

[in] iDevNum

Valeur d’index qui spécifie l’appareil d’affichage qui vous intéresse.

Le système d’exploitation identifie chaque périphérique d’affichage de la session active avec une valeur d’index. Les valeurs d’index sont des entiers consécutifs, commençant à 0. Si la session active a trois périphériques d’affichage, par exemple, ils sont spécifiés par les valeurs d’index 0, 1 et 2.

[out] lpDisplayDevice

Pointeur vers une structure DISPLAY_DEVICE qui reçoit des informations sur le périphérique d’affichage spécifié par iDevNum.

Avant d’appeler EnumDisplayDevices, vous devez initialiser le membre cb de DISPLAY_DEVICE à la taille, en octets, de DISPLAY_DEVICE.

[in] dwFlags

Définissez cet indicateur sur EDD_GET_DEVICE_INTERFACE_NAME (0x00000001) pour récupérer le nom de l’interface de l’appareil pour GUID_DEVINTERFACE_MONITOR, qui est inscrit par le système d’exploitation par moniteur. La valeur est placée dans le membre DeviceID de la structure DISPLAY_DEVICE retournée dans lpDisplayDevice. Le nom de l’interface d’appareil résultant peut être utilisé avec les fonctions SetupAPI et sert de lien entre les appareils de surveillance GDI et les appareils de surveillance SetupAPI.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. La fonction échoue si iDevNum est supérieur au plus grand index d’appareil.

Remarques

Pour interroger tous les périphériques d’affichage de la session active, appelez cette fonction dans une boucle, en commençant par iDevNum défini sur 0, puis en incrémentant iDevNum jusqu’à ce que la fonction échoue. Pour sélectionner tous les périphériques d’affichage sur le bureau, utilisez uniquement les périphériques d’affichage qui ont l’indicateur DISPLAY_DEVICE_ATTACHED_TO_DESKTOP dans la structure DISPLAY_DEVICE .

Pour obtenir des informations sur l’adaptateur d’affichage, appelez EnumDisplayDevices avec lpDevice défini sur NULL. Par exemple, DISPLAY_DEVICE. DeviceString contient le nom de l’adaptateur.

Pour obtenir des informations sur un moniteur d’affichage, appelez d’abord EnumDisplayDevices avec lpDevice défini sur NULL. Appelez ensuite EnumDisplayDevices avec lpDevice défini sur DISPLAY_DEVICE. DeviceName du premier appel à EnumDisplayDevices et avec iDevNum défini sur zéro. Puis DISPLAY_DEVICE. DeviceString est le nom du moniteur.

Pour interroger tous les appareils de surveillance associés à un adaptateur, appelez EnumDisplayDevices dans une boucle avec lpDevice défini sur le nom de l’adaptateur, iDevNum défini sur démarrer à 0 et iDevNum défini sur incrémenter jusqu’à ce que la fonction échoue. Notez que DISPLAY_DEVICE. DeviceName change à chaque appel pour les informations du moniteur. Vous devez donc enregistrer le nom de l’adaptateur. La fonction échoue lorsqu’il n’y a plus de moniteurs pour l’adaptateur.

Notes

L’en-tête winuser.h définit EnumDisplayDevices en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winuser.h (inclure Windows.h)
Bibliothèque User32.lib
DLL User32.dll
Ensemble d’API ext-ms-win-ntuser-sysparams-ext-l1-1-1 (introduit dans Windows 10, version 10.0.14393)

Voir aussi

ChangeDisplaySettings

ChangeDisplaySettingsEx

CreateDC

DEVMODE

DISPLAY_DEVICE

Fonctions de contexte de l’appareil

Vue d’ensemble des contextes d’appareil

EnumDisplaySettings