WdfObjectDereferenceActual-Funktion (wdfobject.h)
[Gilt für KMDF und UMDF]
Die WdfObjectDereferenceActual-Methode erhöht die Verweisanzahl für ein angegebenes Frameworkobjekt und weist dem Verweis einen Tagwert, eine Zeilennummer und einen Dateinamen zu.
Syntax
void WdfObjectDereferenceActual(
[in] WDFOBJECT Handle,
[in, optional] PVOID Tag,
[in] LONG Line,
[in, optional] PCCH File
);
Parameter
[in] Handle
Ein Handle für ein Frameworkobjekt.
[in, optional] Tag
Ein vom Treiber definierter Wert, der einen Objektverweis identifiziert. Der Tagwert muss mit einem Tagwert übereinstimmen, den der Treiber zuvor für WdfObjectReferenceActual angegeben hat.
[in] Line
Ein numerischer Wert, der eine Zeilennummer in einer Treiberquelldatei darstellt.
[in, optional] File
Ein Zeiger auf eine null-beendete konstante Zeichenfolge, die den Namen einer Treiberquelldatei darstellt. Dieser Parameter ist optional und kann NULL sein.
Rückgabewert
Keine
Bemerkungen
Eine Fehlerüberprüfung tritt auf, wenn der Treiber ein ungültiges Objekthandle bereitstellt.
Wenn die Verweisanzahl des Objekts 0 ist, wird das Objekt möglicherweise gelöscht, bevor WdfObjectDereferenceActual zurückgibt.
Das Aufrufen von WdfObjectDereferenceActual oder WdfObjectDereferenceWithTag anstelle von WdfObjectDereference stellt zusätzliche Informationen (Tagzeichenfolge, Zeilennummer und Dateinamen) für Microsoft-Debugger bereit. WdfObjectDereferenceActual ermöglicht ihrem Treiber die Angabe der Zeilennummer und des Dateinamens, während WdfObjectDereferenceWithTag die aktuelle Zeilennummer und den Dateinamen des Treibers verwendet.
Sie können die Werte für Tag, Zeilennummer und Dateinamen anzeigen, indem Sie die Debuggererweiterung !wdftagtracker verwenden. Die Debuggererweiterung zeigt den Tagwert sowohl als Zeiger als auch als Eine Reihe von Zeichen an. Weitere Informationen zu Debuggererweiterungen finden Sie unter Debuggen eines KMDF-Treibers.
Weitere Informationen zur Anzahl von Objektverweisen und zu den Bereinigungsregeln für eine Frameworkobjekthierarchie finden Sie unter Framework Object Life Cycle.
Beispiele
Im folgenden Codebeispiel wird die Verweisanzahl eines Objekts verringert und dem Verweis ein Tagwert, eine Zeilennummer und ein Dateinamen zugewiesen.
WdfObjectDereferenceActual(
object,
pTag,
line,
FILE_NAME
);
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
KMDF-Mindestversion | 1.0 |
UMDF-Mindestversion | 2.0 |
Kopfzeile | wdfobject.h (einschließen von Wdf.h) |
Bibliothek | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI-Complianceregeln | DriverCreate(kmdf) |