Функция IoGetDeviceAttachmentBaseRef (ntifs.h)
Подпрограмма IoGetDeviceAttachmentBaseRef возвращает указатель на объект устройства самого низкого уровня в файловой системе или стеке драйверов устройства.
Синтаксис
PDEVICE_OBJECT IoGetDeviceAttachmentBaseRef(
[in] PDEVICE_OBJECT DeviceObject
);
Параметры
[in] DeviceObject
Указатель на объект устройства в стеке.
Возвращаемое значение
IoGetDeviceAttachmentBaseRef возвращает указатель на объект устройства в нижней части стека файловой системы или драйвера устройства. Если данный объект устройства не подключен к стеку драйверов, IoGetDeviceAttachmentBaseRef возвращает указатель объекта устройства в DeviceObject.
Комментарии
Драйвер фильтра файловой системы обычно вызывает IoGetDeviceAttachmentBaseRef , чтобы получить объект устройства самого низкого уровня в стеке драйверов файловой системы. Часто это делается, когда драйвер фильтра получает уведомление о том, что файловая система зарегистрирована или отменена в качестве активной файловой системы. Подпрограмма обратного вызова уведомлений драйвера фильтра вызывает IoGetDeviceAttachmentBaseRef , чтобы получить указатель на объект управляющего устройства файловой системы, а затем вызывает ObQueryNameString для получения имени этого объекта в целях отладки.
IoGetDeviceAttachmentBaseRef увеличивает количество ссылок на объект устройства в нижней части стека. Таким образом, каждый успешный вызов IoGetDeviceAttachmentBaseRef должен соответствовать последующему вызову ObDereferenceObject.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Накопительный пакет обновления Windows 2000 с пакетом обновления 4 (SP4); Windows XP |
Целевая платформа | Универсальное |
Верхняя часть | ntifs.h (включая Ntifs.h) |
Библиотека | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
См. также раздел
IoRegisterFsRegistrationChange