Función WdfObjectReferenceActual (wdfobject.h)
[Se aplica a KMDF y UMDF]
El método WdfObjectReferenceActual incrementa el recuento de referencias de un objeto de marco especificado y asigna un valor de etiqueta, un número de línea y un nombre de archivo a la referencia.
Sintaxis
void WdfObjectReferenceActual(
[in] WDFOBJECT Handle,
[in, optional] PVOID Tag,
[in] LONG Line,
[in] PCCH File
);
Parámetros
[in] Handle
Identificador de un objeto de marco.
[in, optional] Tag
Valor definido por el controlador que el marco almacena como una etiqueta de identificación para la referencia de objeto.
[in] Line
Valor numérico que representa un número de línea en un archivo de origen del controlador.
[in] File
Puntero a una cadena de caracteres constantes terminadas en null que representa el nombre de un archivo de origen del controlador. Este parámetro es opcional y puede ser NULL.
Valor devuelto
None
Observaciones
Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.
Si el controlador llama a WdfObjectReferenceActual para incrementar un recuento de referencias, el controlador debe llamar a WdfObjectDereferenceActual para disminuir el recuento.
Llamar a WdfObjectReferenceActual o WdfObjectReferenceWithTag en lugar de WdfObjectReference proporciona información adicional (valor de etiqueta, número de línea y nombre de archivo) a los depuradores de Microsoft. WdfObjectReferenceActual permite al controlador especificar el número de línea y el nombre de archivo, mientras que WdfObjectReferenceWithTag usa el número de línea actual del controlador y el nombre de archivo.
Puede ver los valores de etiqueta, número de línea y nombre de archivo mediante la extensión del depurador !wdftagtracker . La extensión del depurador muestra el valor de etiqueta como puntero y una serie de caracteres. Para obtener más información sobre las extensiones del depurador, consulte Depuración de un controlador KMDF.
Para obtener más información sobre los recuentos de referencia de objetos, vea Ciclo de vida de objetos de marco.
Para obtener más información sobre las reglas de limpieza de una jerarquía de objetos de marco, vea Ciclo de vida de objetos de marco.
Ejemplos
En el ejemplo de código siguiente se incrementa el recuento de referencias de un objeto y se asigna un valor de etiqueta, un número de línea y un nombre de archivo a la referencia.
WdfObjectReferenceActual(
object,
pTag,
line,
FILE_NAME
);
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.0 |
Versión mínima de UMDF | 2.0 |
Encabezado | wdfobject.h (incluya Wdf.h) |
Library | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
Reglas de cumplimiento de DDI | DriverCreate(kmdf) |