Partager via


Fonction SetupDiSetSelectedDriverW (setupapi.h)

La fonction SetupDiSetSelectedDriver définit ou réinitialise le pilote sélectionné pour un élément d’informations sur l’appareil ou le pilote de classe sélectionné pour un jeu d’informations de périphérique.

Syntaxe

WINSETUPAPI BOOL SetupDiSetSelectedDriverW(
  [in]      HDEVINFO           DeviceInfoSet,
  [in, out] PSP_DEVINFO_DATA   DeviceInfoData,
  [in, out] PSP_DRVINFO_DATA_W DriverInfoData
);

Paramètres

[in] DeviceInfoSet

Handle du jeu d’informations sur l’appareil qui contient la liste des pilotes à partir de laquelle sélectionner un pilote pour un élément d’informations sur l’appareil ou pour le jeu d’informations sur l’appareil.

[in, out] DeviceInfoData

Pointeur vers une structure de SP_DEVINFO_DATA qui spécifie l’élément d’informations sur l’appareil dans DeviceInfoSet. Ce paramètre est facultatif et peut être NULL. Si ce paramètre est spécifié, SetupDiSetSelectedDriver définit ou réinitialise le pilote sélectionné pour l’appareil spécifié. Si ce paramètre a la valeur NULL, SetupDiSetSelectedDriver définit ou réinitialise le pilote de classe sélectionné pour DeviceInfoSet.

[in, out] DriverInfoData

Pointeur vers une structure de SP_DRVINFO_DATA qui spécifie le pilote à sélectionner. Ce paramètre est facultatif et peut être NULL. Si ce paramètre et DeviceInfoData sont fournis, le pilote spécifié doit être membre d’une liste de pilotes associée à DeviceInfoData. Si ce paramètre est spécifié et que DeviceInfoData a la valeur NULL, le pilote doit être membre de la liste des pilotes de classe globale pour DeviceInfoSet. Si ce paramètre a la valeur NULL, le pilote sélectionné est réinitialisé pour l’élément d’informations sur l’appareil, si DeviceInfoData est spécifié, ou le jeu d’informations sur l’appareil, si DeviceInfoData a la valeur NULL.

Si driverInfoData.Réservé est NULL, l’appelant demande une recherche pour un nœud de pilote avec les paramètres spécifiés (DriverType, Description et ProviderName). Si une correspondance est trouvée, ce nœud de pilote est sélectionné. Le champ Réservé est mis à jour sur la sortie pour refléter le nœud de pilote réel où la correspondance a été trouvée. Si une correspondance est introuvable, la fonction échoue et un appel à GetLastError retourne ERROR_INVALID_PARAMETER.

Valeur retournée

La fonction retourne TRUE si elle réussit. Sinon, il retourne FALSE et l’erreur journalisée peut être récupérée avec un appel à GetLastError.

Remarques

Si l’appelant de SetupDiSetSelectedDriver est membre du groupe Administrateurs, la classe de l’appareil est définie sur la classe du pilote sélectionné, à condition que les deux classes soient différentes.

Si DriverInfoData a la valeur NULL, SetupDiSetSelectedDriver réinitialise le pilote sélectionné. Par conséquent, aucun pilote n’est sélectionné.

Notes

L’en-tête setupapi.h définit SetupDiSetSelectedDriver comme un 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. Le mélange 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 Disponible dans Microsoft Windows 2000 et versions ultérieures de Windows.
Plateforme cible Desktop (Expérience utilisateur)
En-tête setupapi.h (inclure Setupapi.h)
Bibliothèque Setupapi.lib

Voir aussi

SetupDiGetSelectedDriver