WdfObjectReferenceActual 函数 (wdfobject.h)

[适用于 KMDF 和 UMDF]

WdfObjectReferenceActual 方法递增指定框架对象的引用计数,并将标记值、行号和文件名分配给引用。

语法

void WdfObjectReferenceActual(
  [in]           WDFOBJECT Handle,
  [in, optional] PVOID     Tag,
  [in]           LONG      Line,
  [in]           PCCH      File
);

参数

[in] Handle

框架对象的句柄。

[in, optional] Tag

驱动程序定义的值,框架存储为对象引用的标识标记。

[in] Line

表示驱动程序源文件中的行号的数值。

[in] File

指向以 null 结尾的常量字符串的指针,该字符串表示驱动程序源文件的名称。 此参数是可选的,可以为 NULL

返回值

备注

如果驱动程序提供无效的对象句柄,则会发生 bug 检查。

如果驱动程序调用 WdfObjectReferenceActual 来递增引用计数,则驱动程序必须调用 WdfObjectDereferenceActual 来递减计数。

调用 WdfObjectReferenceActualWdfObjectReferenceWithTag 而不是 WdfObjectReference 可提供其他信息, (标记值、行号和文件名) Microsoft 调试器。 WdfObjectReferenceActual 允许驱动程序指定行号和文件名,而 WdfObjectReferenceWithTag 使用驱动程序的当前行号和文件名。

可以使用 !wdftagtracker 调试器 扩展查看标记、行号和文件名值。 调试器扩展将标记值显示为指针和一系列字符。 有关调试器扩展的详细信息,请参阅 调试 KMDF 驱动程序

有关对象引用计数的详细信息,请参阅 框架对象生命周期

有关框架对象层次结构的清理规则的详细信息,请参阅 框架对象生命周期

示例

下面的代码示例递增对象的引用计数,并将标记值、行号和文件名分配给引用。

WdfObjectReferenceActual(
                         object,
                         pTag,
                         line,
                         FILE_NAME
                         );

要求

要求
目标平台 通用
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfobject.h (包括 Wdf.h)
Library Wdf01000.sys (KMDF) ;WUDFx02000.dll (UMDF)
IRQL <=DISPATCH_LEVEL
DDI 符合性规则 DriverCreate (kmdf)

另请参阅

WdfObjectReference