Partager via


SetupDiSetDeviceInterfacePropertyW, fonction (setupapi.h)

La fonction SetupDiSetDeviceInterfaceProperty définit une propriété d’appareil d’une interface d’appareil.

Syntaxe

WINSETUPAPI BOOL SetupDiSetDeviceInterfacePropertyW(
  [in]           HDEVINFO                  DeviceInfoSet,
  [in]           PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
  [in]           const DEVPROPKEY          *PropertyKey,
  [in]           DEVPROPTYPE               PropertyType,
  [in, optional] const PBYTE               PropertyBuffer,
  [in]           DWORD                     PropertyBufferSize,
  [in]           DWORD                     Flags
);

Paramètres

[in] DeviceInfoSet

Handle d’un jeu d’informations d’appareil qui contient l’interface d’appareil pour laquelle définir une propriété d’interface d’appareil.

[in] DeviceInterfaceData

Pointeur vers une structure de SP_DEVICE_INTERFACE_DATA qui représente l’interface d’appareil pour laquelle définir une propriété d’interface d’appareil.

[in] PropertyKey

Pointeur vers une structure DEVPROPKEY qui représente la clé de propriété d’appareil de la propriété d’interface d’appareil à définir.

[in] PropertyType

Valeur de type DEVPROPTYPE qui représente l’identificateur de type propriété-données de la propriété d’interface d’appareil à définir. Pour plus d’informations sur l’identificateur de type de données de propriété, consultez la section Remarques plus loin dans cette rubrique.

[in, optional] PropertyBuffer

Pointeur vers une mémoire tampon qui contient la valeur de propriété de l’interface d’appareil. Si la propriété ou la valeur de l’interface est supprimée, ce pointeur doit avoir la valeur NULL et PropertyBufferSize doit avoir la valeur zéro. Pour plus d’informations sur les données de valeur de propriété, consultez la section Remarques plus loin dans cette rubrique.

[in] PropertyBufferSize

Taille, en octets, de la mémoire tampon PropertyBuffer . La taille de la mémoire tampon de propriété doit être cohérente avec l’identificateur de type de données de propriété fourni par PropertyType. Si PropertyBuffer a la valeur NULL, PropertyBufferSize doit avoir la valeur zéro.

[in] Flags

Doit être défini sur zéro.

Valeur retournée

SetupDiSetDeviceInterfaceProperty retourne TRUE si elle réussit. Sinon, cette fonction 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_PARAMETER
Un paramètre fourni n’est pas valide. Il est possible que l’interface d’appareil spécifiée par DeviceInterfaceData ne soit pas valide.
ERROR_INVALID_REG_PROPERTY
La clé de propriété fournie par PropertyKey n’est pas valide.
ERROR_INVALID_DATA
Une valeur de données non spécifiée n’était pas valide. Cette erreur peut être journalisée si le nom de lien symbolique de l’interface de l’appareil n’est pas valide ou si l’identificateur de type de données de propriété n’est pas valide.
ERROR_INVALID_USER_BUFFER
Une mémoire tampon utilisateur n’est pas valide. Une possibilité est que PropertyBuffer a la valeur NULL et Que PropertBufferSize 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
Une mémoire tampon de données interne qui a été passée à un appel système était trop petite.
ERROR_NOT_ENOUGH_MEMORY
La mémoire système disponible était insuffisante pour terminer l’opération.
ERROR_NOT_FOUND
Un élément interne non spécifié est introuvable. Il est possible qu’une propriété à supprimer n’existe pas.
ERROR_ACCESS_DENIED
L’appelant n’a pas de privilèges d’administrateur.

Remarques

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

SetupAPI prend uniquement en charge une version Unicode de SetupDiSetDeviceInterfaceProperty.

Un appelant de SetupDiSetDeviceInterfaceProperty doit être membre du groupe Administrateurs pour définir une propriété d’interface d’appareil.

SetupDiSetDeviceInterfaceProperty applique les exigences sur l’identificateur de type de données de propriété et la valeur de la propriété.

Pour obtenir les clés de propriété d’appareil qui représentent les propriétés d’appareil définies pour une interface d’appareil, appelez SetupDiGetDeviceInterfacePropertyKeys.

Pour récupérer une propriété d’interface d’appareil, appelez SetupDiGetDeviceInterfaceProperty.

Configuration requise

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

Voir aussi

SetupDiGetDeviceInterfaceProperty

SetupDiGetDeviceInterfacePropertyKeys