Макрос WdfObjectDereferenceWithTag
[Относится к KMDF и UMDF]
Макрос WdfObjectDereferenceWithTag уменьшает количество ссылок для указанного объекта платформы и присваивает ссылке текущее имя файла и номер строки драйвера. Этот макрос также присваивает ссылке значение тега.
Синтаксис
VOID WdfObjectDereferenceWithTag(
[in] WDFOBJECT Handle,
[in] PVOID Tag
);
Параметры
Дескриптор [в]
Дескриптор объекта платформы.
Тег [in]
Определенное драйвером значение, идентифицирующее ссылку на объект. Значение тега должно соответствовать значению тега, которое драйвер ранее предоставил в WdfObjectReferenceWithTag.
Возвращаемое значение
Нет.
Ошибка проверка возникает, если драйвер предоставляет недопустимый дескриптор объекта.
Комментарии
Если количество ссылок объекта становится равным нулю, объект может быть удален до возврата WdfObjectDereferenceWithTag .
Вызов WdfObjectDereferenceActual или WdfObjectDereferenceWithTag вместо WdfObjectDereference предоставляет дополнительные сведения (строку тега, номер строки и имя файла) отладчикам Майкрософт. WdfObjectDereferenceActual позволяет драйверу указать номер строки и имя файла, а WdfObjectDereferenceWithTag использует текущий номер строки и имя файла драйвера.
Вы можете просмотреть значения тега, номера строки и имени файла с помощью расширения отладчика !wdftagtracker . Расширение отладчика отображает значение тега в виде указателя и ряда символов. Дополнительные сведения о расширениях отладчика см. в разделе Отладка драйвера KMDF.
Дополнительные сведения о количестве ссылок на объекты см. в разделе Жизненный цикл объектов платформы.
Примеры
В следующем примере кода уменьшается число ссылок объекта и присваивается значение тега ссылке.
WdfObjectDereferenceWithTag(
object,
pTag
);
Требования
Целевая платформа |
Универсальное |
Минимальная версия KMDF |
1,0 |
Минимальная версия UMDF |
2,0 |
Заголовок |
Wdfobject.h (включая Wdf.h) |
Библиотека |
Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL |
<= DISPATCH_LEVEL |