Partager via


SetupDiSelectBestCompatDrv, fonction (setupapi.h)

La fonction SetupDiSelectBestCompatDrv est le gestionnaire par défaut pour la demande d’installation DIF_SELECTBESTCOMPATDRV .

Syntaxe

WINSETUPAPI BOOL SetupDiSelectBestCompatDrv(
  [in]      HDEVINFO         DeviceInfoSet,
  [in, out] PSP_DEVINFO_DATA DeviceInfoData
);

Paramètres

[in] DeviceInfoSet

Handle d’un jeu d’informations de périphérique qui contient un élément d’informations sur le périphérique qui représente l’appareil pour lequel sélectionner le pilote le mieux compatible.

[in, out] DeviceInfoData

Pointeur vers une structure de SP_DEVINFO_DATA qui spécifie l’élément d’informations sur l’appareil dans DeviceInfoSet. SetupDiSelectBestCompatDrv sélectionne le meilleur pilote pour un élément d’informations de périphérique dans la liste des pilotes compatibles pour l’appareil spécifié.

Valeur retournée

Si l’opération réussit, SetupDiSelectBestCompatDrv retourne TRUE. Sinon, la fonction retourne FALSE et l’erreur journalisée peut être récupérée par un appel à GetLastError.

Remarques

Si l’appelant de SetupDiSelectBestCompatDrv est membre du groupe Administrateurs et que la classe de l’appareil est différente de celle de la classe du pilote sélectionné, SetupDiSelectBestCompatDrv définit la classe de l’appareil sur la classe du pilote. Si ce comportement n’est pas souhaité, appelez cette fonction à un niveau de privilège inférieur.

Note Seul un programme d’installation de classe doit appeler SetupDiSelectBestCompatDrv et uniquement dans les situations où le programme d’installation de classe doit effectuer des opérations de sélection de pilote une fois que SetupDiSelectBestCompatDrv a terminé l’opération de sélection de pilote par défaut. Dans ce cas, le programme d’installation de classe doit appeler directement SetupDiSelectBestCompatDrv quand le programme d’installation traite une demande de DIF_SELECTBESTCOMPATDRV. Pour plus d’informations sur l’appel du gestionnaire par défaut, consultez Appel des gestionnaires de code DIF par défaut.
 
SetupDiSelectBestCompatDrv est principalement conçu pour sélectionner le pilote le mieux compatible pour un élément d’informations de périphérique sur un ordinateur local. Bien que SetupDiSelectBestCompatDrv n’échoue pas si l’ensemble d’informations sur l’appareil est destiné à un ordinateur distant, le résultat est d’une utilisation limitée, car le jeu d’informations sur l’appareil ne peut par la suite pas être utilisé comme entrée avec des demandes d’installation DIF_Xxx ou des fonctions SetupDiXxx qui ne prennent pas en charge les opérations d’un ordinateur distant. En particulier, le jeu d’informations sur l’appareil ne peut pas être utilisé ultérieurement comme entrée avec une demande d’installation DIF_INSTALLDEVICE pour installer un appareil sur un ordinateur distant.

Pour plus d’informations sur la façon dont le meilleur pilote est sélectionné, consultez Comment Windows sélectionne les pilotes.

Pour obtenir le pilote sélectionné pour un appareil, appelez SetupDiGetSelectedDriver.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans 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
DLL Setupapi.dll

Voir aussi

DIF_SELECTBESTCOMPATDRV

SP_DEVINFO_DATA