Макрос WdfDeviceStopIdleWithTag (wdfdevice.h)

[Применимо к KMDF и UMDF]

Макрос WdfDeviceStopIdleWithTag увеличивает число ссылок на питание для указанного объекта устройства платформы и присваивает текущему имени файла и номеру строки драйвера ссылке. Макрос также присваивает ссылке значение тега.

Синтаксис

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

Параметры

[in] Device

Дескриптор объекта устройства платформы.

[in] WaitForD0

Логическое значение, указывающее, когда возвращается WdfDeviceStopIdleWithTag . Значение TRUE возвращается только после того, как указанное устройство перейдет в состояние питания устройства D0. Если значение РАВНО FALSE, метод возвращается немедленно.

[in] Tag

Определенное драйвером значение, которое платформа сохраняет в качестве идентификационного тега для ссылки на питание.

Возвращаемое значение

None

Remarks

Если операция выполнена успешно, WdfDeviceStopIdleWithTag возвращает STATUS_SUCCESS.

К дополнительным возвращаемым значениям относятся:

Код возврата Описание
STATUS_PENDING

Устройство работает асинхронно.

STATUS_INVALID_DEVICE_STATE

Драйвер не является владельцем политики питания для устройства.

STATUS_POWER_STATE_INVALID

Произошел сбой устройства, и устройство не может войти в состояние питания D0.

Метод может возвращать другие значения NTSTATUS.

Ошибка проверка возникает, если драйвер предоставляет недопустимый дескриптор объекта.

Если драйвер вызывает WdfDeviceStopIdleWithTag для увеличения числа ссылок, драйвер должен вызвать WdfDeviceResumeIdleWithTag для уменьшения числа.

Вызов WdfDeviceStopIdleWithTag вместо WdfDeviceStopIdle предоставляет дополнительные сведения (значение тега, номер строки и имя файла), которые можно просмотреть в отладчиках Майкрософт. WdfDeviceStopIdleWithTag использует текущий номер строки и имя файла драйвера.

Вы можете просмотреть значения тега, номера строки и имени файла с помощью расширения отладчика !wdftagtracker . Расширение отладчика отображает значение тега как указатель и ряд символов.

Используйте !wdfkd.wdfdevice с подробными флагами в и найдите ссылку на !wdftagtracker в выходных данных:

kd> !wdfdevice <handle> f 

Требования

Требование Значение
Целевая платформа Универсальное
Минимальная версия KMDF 1.15
Минимальная версия UMDF 2.15
Верхняя часть wdfdevice.h (включая Wdf.h)
Библиотека Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL См. раздел "Примечания".
Правила соответствия DDI DriverCreate, KmdfIrql, KmdfIrql2

См. также раздел

Отладка утечек power Reference в WDF

WdfDeviceResumeIdle

WdfDeviceResumeIdleWithTag

WdfDeviceStopIdle