Méthode IWDFDriver ::CreateWdfObject (wudfddi.h)

[Avertissement : UMDF 2 est la dernière version d’UMDF et remplace UMDF 1. Tous les nouveaux pilotes UMDF doivent être écrits à l’aide d’UMDF 2. Aucune nouvelle fonctionnalité n’est ajoutée à UMDF 1 et la prise en charge d’UMDF 1 est limitée sur les versions plus récentes de Windows 10. Les pilotes Windows universels doivent utiliser UMDF 2. Pour plus d’informations, consultez Prise en main avec UMDF.]

La méthode CreateWdfObject crée un objet WDF personnalisé (ou utilisateur) à partir d’un objet WDF parent.

Syntaxe

HRESULT CreateWdfObject(
  [in, optional] IUnknown   *pCallbackInterface,
  [in, optional] IWDFObject *pParentObject,
  [out]          IWDFObject **ppWdfObject
);

Paramètres

[in, optional] pCallbackInterface

Pointeur vers l’interface IUnknown que l’infrastructure utilise pour déterminer les fonctions de rappel d’événement liées à l’objet auxquelles le pilote s’abonne sur l’objet personnalisé nouvellement créé. Ce paramètre est facultatif. Le pilote peut passer la valeur NULL si le pilote ne nécessite pas de notification. Si le pilote transmet un pointeur valide, l’infrastructure appelle QueryInterface sur l’interface IUnknown pour l’interface IObjectCleanup . Si l’infrastructure obtient l’interface IObjectCleanup du pilote, l’infrastructure peut ensuite appeler la méthode IObjectCleanup ::OnCleanup du pilote pour informer le pilote que l’objet personnalisé est nettoyé.

[in, optional] pParentObject

Pointeur vers l’interface IWDFObject pour l’objet WDF parent. Si la valeur est NULL, l’objet driver devient le parent par défaut.

[out] ppWdfObject

Pointeur vers une mémoire tampon qui reçoit un pointeur vers l’interface IWDFObject pour l’objet WDF nouvellement créé.

Valeur retournée

CreateWdfObject retourne S_OK si l’opération réussit. Sinon, cette méthode retourne l’un des codes d’erreur définis dans Winerror.h.

Remarques

Le pilote peut appeler CreateWdfObject pour créer un objet de base d’infrastructure général pour sa propre utilisation. Le pilote peut associer la mémoire contextuelle, affecter un objet parent et inscrire une interface IObjectCleanup . L’infrastructure appelle ensuite la méthode IObjectCleanup ::OnCleanup pour propre l’objet enfant.

Si aucun objet parent n’est spécifié au niveau du paramètre pParentObject , le pilote devient le parent par défaut. Par conséquent, lorsque l’objet pilote est supprimé, l’infrastructure nettoie l’objet enfant.

Si un objet parent est affecté, l’objet enfant est supprimé lorsque l’objet parent est supprimé. En d’autres termes, la durée de vie d’un objet enfant est limitée à celle du parent.

Si le pilote doit propre l’objet enfant avant la suppression de l’objet parent, il peut appeler la méthode IWDFObject ::D eleteWdfObject.

Configuration requise

Condition requise Valeur
Fin de la prise en charge Non disponible dans UMDF 2.0 et versions ultérieures.
Plateforme cible Desktop (Expérience utilisateur)
Version UMDF minimale 1.5
En-tête wudfddi.h (inclure Wudfddi.h)
DLL WUDFx.dll

Voir aussi

IObjectCleanup

IObjectCleanup ::OnCleanup

IWDFDriver

IWDFObject

IWDFObject ::D eleteWdfObject