[适用于 KMDF 和 UMDF]
WdfObjectDereferenceWithTag 宏递减指定框架对象的引用计数,并将驱动程序的当前文件名和行号分配给引用。 此宏还会向引用分配标记值。
语法
VOID WdfObjectDereferenceWithTag(
[in] WDFOBJECT Handle,
[in] PVOID Tag
);
参数
句柄 [in]
框架对象的句柄。
标记 [in]
标识对象引用的驱动程序定义值。 标记值必须与驱动程序先前提供给 WdfObjectReferenceWithTag的标记值匹配。
返回值
没有。
如果驱动程序提供无效的对象句柄,则会发生 bug 检查。
注解
如果对象的引用计数变为零,则可能会在 WdfObjectDereferenceWithTag 返回之前删除该对象。
调用 WdfObjectDereferenceActual 或 WdfObjectDereferenceWithTag 而不是 WdfObjectDereference 可提供其他信息(标记字符串、行号和文件名)来Microsoft调试器。 WdfObjectDereferenceActual 允许驱动程序指定行号和文件名,而 WdfObjectDereferenceWithTag 使用驱动程序的当前行号和文件名。
可以使用 !wdftagtracker 调试器扩展来查看标记、行号和文件名值。 调试器扩展将标记值显示为指针和一系列字符。 有关调试器扩展的详细信息,请参阅 调试 KMDF 驱动程序。
有关对象引用计数的详细信息,请参阅 Framework 对象生命周期。
例子
下面的代码示例递减对象的引用计数,并将标记值分配给引用。
WdfObjectDereferenceWithTag(
object,
pTag
);
要求
目标平台 |
通用 |
最低 KMDF 版本 |
1.0 |
最低 UMDF 版本 |
2.0 |
标题 |
Wdfobject.h (包括 Wdf.h) |
图书馆 |
Wdf01000.sys(KMDF):WUDFx02000.dll (UMDF) |
IRQL |
<= DISPATCH_LEVEL |