Compartir a través de


Macro WdfDeviceStopIdleWithTag (wdfdevice.h)

[Se aplica a KMDF y UMDF]

La macro WdfDeviceStopIdleWithTag incrementa el recuento de referencias de energía de un objeto de dispositivo de marco especificado y asigna el nombre de archivo actual del controlador y el número de línea a la referencia. La macro también asigna un valor de etiqueta a la referencia.

Sintaxis

NTSTATUS WdfDeviceStopIdleWithTag(
    _In_ WDFDEVICE Device,
    _In_ BOOLEAN WaitForD0,
    _In_ PVOID Tag
);

Parámetros

[in] Device

Identificador de un objeto de dispositivo de marco.

[in] WaitForD0

Valor booleano que indica cuándo devolverá WdfDeviceStopIdleWithTag . Si es TRUE, devuelve solo después de que el dispositivo especificado haya entrado en el estado de alimentación del dispositivo D0. Si es FALSE, el método devuelve inmediatamente.

[in] Tag

Valor definido por el controlador que el marco almacena como una etiqueta de identificación para la referencia de energía.

Valor devuelto

None

Observaciones

Si la operación se realiza correctamente, WdfDeviceStopIdleWithTag devuelve STATUS_SUCCESS.

Entre los valores devueltos adicionales se incluyen:

Código devuelto Descripción
STATUS_PENDING

El dispositivo se está alimentando de forma asincrónica.

STATUS_INVALID_DEVICE_STATE

El controlador no es el propietario de la directiva de energía del dispositivo.

STATUS_POWER_STATE_INVALID

Se produjo un error en el dispositivo y el dispositivo no puede entrar en su estado de alimentación D0.

El método podría devolver otros valores NTSTATUS.

Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.

Si el controlador llama a WdfDeviceStopIdleWithTag para incrementar un recuento de referencias, el controlador debe llamar a WdfDeviceResumeIdleWithTag para reducir el recuento.

Llamar a WdfDeviceStopIdleWithTag en lugar de WdfDeviceStopIdle proporciona información adicional (valor de etiqueta, número de línea y nombre de archivo) que puede ver en los depuradores de Microsoft. WdfDeviceStopIdleWithTag 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.

Use !wdfkd.wdfdevice con marcas detalladas en y busque el vínculo a !wdftagtracker en la salida:

kd> !wdfdevice <handle> f 

Requisitos

Requisito Value
Plataforma de destino Universal
Versión mínima de KMDF 1.15
Versión mínima de UMDF 2.15
Encabezado wdfdevice.h (incluir Wdf.h)
Library Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL vea la sección Comentarios.
Reglas de cumplimiento de DDI DriverCreate, KmdfIrql, KmdfIrql2

Consulte también

Depuración de fugas de referencia de energía en WDF

WdfDeviceResumeIdle

WdfDeviceResumeIdleWithTag

WdfDeviceStopIdle