Partager via


SetupDiGetDeviceInterfacePropertyKeys, fonction (setupapi.h)

La fonction SetupDiGetDeviceInterfacePropertyKeys récupère un tableau de clés de propriété d’appareil qui représentent les propriétés d’appareil définies pour une interface d’appareil.

Syntaxe

WINSETUPAPI BOOL SetupDiGetDeviceInterfacePropertyKeys(
  [in]            HDEVINFO                  DeviceInfoSet,
  [in]            PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
  [out, optional] DEVPROPKEY                *PropertyKeyArray,
  [in]            DWORD                     PropertyKeyCount,
  [out, optional] PDWORD                    RequiredPropertyKeyCount,
  [in]            DWORD                     Flags
);

Paramètres

[in] DeviceInfoSet

Handle pour un jeu d’informations d’appareil. Ce jeu d’informations sur l’appareil contient une interface d’appareil pour laquelle récupérer un tableau des clés de propriété d’appareil qui représentent les propriétés d’appareil définies pour une interface d’appareil.

[in] DeviceInterfaceData

Pointeur vers une structure de SP_DEVICE_INTERFACE_DATA qui représente l’interface d’appareil pour laquelle récupérer le tableau demandé de clés de propriété d’appareil.

[out, optional] PropertyKeyArray

Pointeur vers une mémoire tampon qui reçoit un tableau de valeurs de type DEVPROPKEY, où chaque valeur est une clé de propriété d’appareil pour une propriété d’appareil définie pour l’interface de l’appareil. Le pointeur est facultatif et peut être NULL. Pour plus d’informations, consultez la section Remarques plus loin dans cette rubrique.

[in] PropertyKeyCount

Taille, dans les éléments de type DEVPROPKEY, de la mémoire tampon PropertyKeyArray. Si PropertyKeyArray a la valeur NULL, PropertyKeyCount doit être défini sur zéro.

[out, optional] RequiredPropertyKeyCount

Pointeur vers une variable de type DWORD qui reçoit le nombre de clés de propriété d’appareil demandées. Le pointeur est facultatif et peut être défini sur NULL.

[in] Flags

Ce paramètre doit être défini sur zéro.

Valeur retournée

La fonction retourne TRUE si elle réussit. Sinon, elle retourne FALSE et l’erreur journalisée peut être récupérée en appelant GetLastError.

Le tableau suivant inclut certains des codes d’erreur les plus courants que cette fonction peut enregistrer.

Code de retour Description
ERROR_INVALID_FLAGS
La valeur des indicateurs n’est pas égale à zéro.
ERROR_INVALID_HANDLE
Le jeu d’informations sur l’appareil spécifié par DevInfoSet n’est pas valide.
ERROR_INVALID_DATA
Une valeur de données interne n’est pas valide.
ERROR_INVALID_PARAMETER
Un paramètre n'est pas valide. Il est possible que l’interface d’appareil spécifiée par DevInterfaceData ne soit pas valide.
ERROR_INVALID_USER_BUFFER
Une mémoire tampon utilisateur n’est pas valide. Une possibilité est que PropertyKeyArray a la valeur NULL et Que PropertKeyCount n’est pas zéro. .
ERROR_NO_SUCH_DEVICE_INTERFACE
L’interface d’appareil spécifiée par DeviceInterfaceData n’existe pas.
ERROR_INSUFFICIENT_BUFFER
La mémoire tampon PropertyKeyArray n’est pas assez grande pour contenir toutes les clés de propriété demandées.
ERROR_NOT_ENOUGH_MEMORY
La mémoire système disponible était insuffisante pour terminer l’opération.

Remarques

SetupDiGetDeviceInterfacePropertyKeys fait partie du modèle de propriété d’appareil unifié.

Si la mémoire tampon PropertyKeyArray n’est pas assez grande pour contenir toutes les clés de propriété demandées, SetupDiGetDeviceInterfacePropertyKeys ne récupère aucune clé de propriété et retourne ERROR_INSUFFICIENT_BUFFER. Si l’appelant a fourni un pointeur RequiredPropertyKeyCount, SetupDiGetDeviceInterfacePropertyKeys définit la valeur de *RequiredPropertyKeyCount à la taille requise, dans les valeurs de type DEVPROPKEY, de la mémoire tampon PropertyKeyArray.

Pour récupérer une propriété d’interface d’appareil, appelez SetupDiGetDeviceInterfacePropertyet pour définir une propriété d’interface d’appareil, appelez SetupDiSetDeviceInterfaceProperty.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows Vista et les versions plus récentes de Windows.
Plateforme cible DesktopPour universel, appelez CM_Get_Device_Interface_Property_Keys
En-tête setupapi.h (inclure Setupapi.h)
Bibliothèque Setupapi.lib
DLL Setupapi.dll

Voir aussi

SetupDiGetDeviceInterfaceProperty

SetupDiSetDeviceInterfaceProperty