IWMDeviceManager3 ::SetDeviceEnumPreference, méthode (mswmdm.h)
La méthode SetDeviceEnumPreference définit les préférences d’énumération des appareils.
Syntaxe
HRESULT SetDeviceEnumPreference(
[in] DWORD dwEnumPref
);
Paramètres
[in] dwEnumPref
Spécifie une combinaison OR au niveau du bit d’une ou plusieurs des valeurs de bits suivantes qui spécifient la préférence d’énumération. Chaque bit défini active le comportement étendu correspondant, tandis que l’absence de ce bit désactive le comportement étendu et spécifie le comportement d’énumération par défaut à compatibilité descendante. Les valeurs possibles pour fuPrefs sont fournies dans le tableau suivant.
Valeur | Description |
---|---|
DO_NOT_VIRTUALIZE_STORAGES_AS_DEVICES | Par défaut, pour les appareils contenant plusieurs supports de stockage (par exemple, plusieurs cartes mémoire flash), chacun de ces stockages est énuméré sous la forme d’un pseudo-appareil distinct. Toutefois, lorsque cet indicateur est défini, les stockages ne sont pas visibles en tant qu’appareils, et seuls les appareils sont visibles en tant qu’appareils. Pour plus d'informations, consultez la section Notes. |
ALLOW_OUTOFBAND_NOTIFICATION | Lorsque cet indicateur est défini, le fournisseur de services peut envoyer l’arrivée et la suppression de l’appareil à l’aide d’un mécanisme supplémentaire, par exemple à l’aide d’un message de fenêtre, ainsi que du mécanisme par défaut d’appel des interfaces IWMDMNotification implémentées par l’application. |
Valeur retournée
Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.
Code de retour | Description |
---|---|
|
S_OK |
|
Le paramètre fuPrefs spécifie une valeur de bit non prise en charge. |
|
La méthode a été appelée après une opération d’énumération ; il doit être appelé avant l’opération d’énumération. |
Remarques
Cette méthode permet aux clients de remplacer le comportement d’énumération d’appareil par défaut de Windows Media Gestionnaire de périphériques. Pour remplacer le comportement par défaut, l’application cliente doit appeler cette méthode immédiatement après avoir créé l’objet device manager en interrogeant l’interface IWMDMDeviceManager3 à partir de Media Gestionnaire de périphériques. L’appel doit être effectué avant qu’une énumération ne se produise, explicitement ou implicitement à la suite d’une autre opération.
Une fois qu’un indicateur de préférence est défini, il ne peut pas être modifié pendant la durée de vie de l’application (pas seulement la durée de vie de l’objet Gestionnaire de périphériques Windows Media). Toute tentative de modification d’un indicateur de préférence génère une erreur. L’appel de cette méthode à nouveau avec les mêmes paramètres d’indicateur ne retourne pas d’erreur et n’a aucun effet sur l’énumération.
Le fournisseur de services peut ne pas respecter l’indicateur DO_NOT_VIRTUALIZE_STORAGES_AS_DEVICES. Un moyen plus robuste de déterminer si les stockages sont hébergés par le même appareil consiste à appeler IWMDMDevice2 ::GetCanonicalName. Les stockages du même appareil retournent des valeurs identiques, à l’exception du dernier chiffre après le dernier caractère « $ ».
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | mswmdm.h |