Macro WdfObjectDereferenceWithTag

[S’applique à KMDF et UMDF]

La macro WdfObjectDereferenceWithTag décrémente le nombre de références pour un objet framework spécifié et affecte le nom de fichier actuel et le numéro de ligne du pilote à la référence. Cette macro affecte également une valeur de balise à la référence.

Syntaxe

VOID WdfObjectDereferenceWithTag(
  [in] WDFOBJECT Handle,
  [in] PVOID     Tag
);

Paramètres

Handle [in]
Handle pour un objet framework.

Balise [in]
Valeur définie par le pilote qui identifie une référence d’objet. La valeur de balise doit correspondre à une valeur de balise que le pilote a précédemment fournie à WdfObjectReferenceWithTag.

Valeur retournée

Aucun.

Un bogue case activée se produit si le pilote fournit un handle d’objet non valide.

Remarques

Si le nombre de références de l’objet devient égal à zéro, l’objet peut être supprimé avant le retour de WdfObjectDereferenceWithTag .

L’appel de WdfObjectDereferenceActual ou WdfObjectDereferenceWithTag au lieu de WdfObjectDereference fournit des informations supplémentaires (chaîne de balise, numéro de ligne et nom de fichier) aux débogueurs Microsoft. WdfObjectDereferenceActual permet à votre pilote de spécifier le numéro de ligne et le nom de fichier, tandis que WdfObjectDereferenceWithTag utilise le numéro de ligne et le nom de fichier actuels du pilote.

Vous pouvez afficher les valeurs de balise, de numéro de ligne et de nom de fichier à l’aide de l’extension de débogueur !wdftagtracker . L’extension de débogueur affiche la valeur de balise sous la forme d’un pointeur et d’une série de caractères. Pour plus d’informations sur les extensions de débogueur, consultez Débogage d’un pilote KMDF.

Pour plus d’informations sur le nombre de références d’objets, consultez Framework Object Life Cycle.

Exemples

L’exemple de code suivant décrémente le nombre de références d’un objet et affecte une valeur de balise à la référence.

WdfObjectDereferenceWithTag(
                            object,
                            pTag
                            );

Configuration requise

Plateforme cible

Universal

Version KMDF minimale

1.0

Version UMDF minimale

2.0

En-tête

Wdfobject.h (inclure Wdf.h)

Bibliothèque

Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF)

IRQL

<= DISPATCH_LEVEL

Voir aussi

WdfObjectDereference

WdfObjectReferenceWithTag