ISensorClassExtension ::Initialize, méthode (sensorsclassextension.h)
La méthode ISensorClassExtension ::Initialize initialise l’objet d’extension de classe de capteur.
Syntaxe
HRESULT Initialize(
IUnknown *pWdfDeviceUnknown,
IUnknown *pSensorDriverUnknown
);
Paramètres
pWdfDeviceUnknown
Pointeur IUnknown pour la classe de pilote qui implémente l’interface IWDFDevice.
pSensorDriverUnknown
Pointeur IUnknown pour l’objet qui implémente l’interface de rappel ISensorDriver.
Valeur retournée
Cette méthode retourne un HRESULT. Les valeurs possibles incluent, sans s’y limiter, l’une des valeurs suivantes. Consultez la section Notes.
Code de retour | Description |
---|---|
S_OK | S_OK |
E_POINTER | L’argument était NULL ou l’interface IWDFDevice est manquante.. |
HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS) | L’extension de classe est déjà initialisée. |
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED) | L’extension de classe est déjà initialisée. |
HRESULT_FROM_WIN32(ERROR_NOT_FOUND) | La WPD_OBJECT_ID du capteur n’est pas valide. |
Remarques
Tout d’abord, créez l’extension de classe de capteur en appelant la méthode COM CoCreateInstance, puis appelez Initialize. Nous vous recommandons d’effectuer ces étapes d’initialisation lorsqu’elle est appelée par UMDF dans IPnpCallbackHardware ::OnPrepareHardware. Une fois l’initialisation retournée, le pilote doit être prêt à recevoir des rappels à partir de l’extension de classe de capteur. L’extension de classe de capteur appelle ISensorDriver ::OnGetSupportedSensorObjects pendant l’initialisation. Votre pilote doit être prêt à retourner des valeurs pour toutes les propriétés et champs de données requis avant d’appeler Initialize.
Étant donné que l’extension de classe appelle votre pilote pendant l’initialisation, cette méthode peut également retourner les HRESULT que votre pilote retourne à partir de ISensorDriver ::OnGetSupportedSensorObjects.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | sensorsclassextension.h |
Bibliothèque | SensorsClassExtension.lib |