Функция IoGetTopLevelIrp (wdm.h)

Подпрограмма IoGetTopLevelIrp возвращает значение поля TopLevelIrp текущего потока.

Синтаксис

PIRP IoGetTopLevelIrp();

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

IoGetTopLevelIrp возвращает значение поля TopLevelIrp текущего потока.

Комментарии

IoGetTopLevelIrp может возвращать значение NULL, произвольное значение, относящееся к файловой системе (например, указатель на текущий IRP) или один из флагов, перечисленных в следующей таблице.

Если текущий поток не содержит ресурсов над файловой системой, IoGetTopLevelIrp возвращает значение NULL.

Если файловая система является компонентом верхнего уровня для текущего потока, IoGetTopLevelIrp возвращает указатель на текущий IRP.

Если компонент, отличный от файловой системы, является компонентом верхнего уровня для текущего потока, IoGetTopLevelIrp возвращает один из следующих флагов:

Flag Значение
FSRTL_FSP_TOP_LEVEL_IRP Это рекурсивный вызов.
FSRTL_CACHE_TOP_LEVEL_IRP Диспетчер кэша — это компонент верхнего уровня для текущего потока.
FSRTL_MOD_WRITE_TOP_LEVEL_IRP Измененный модуль записи страниц является компонентом верхнего уровня для текущего потока.
FSRTL_FAST_IO_TOP_LEVEL_IRP Диспетчер кэша — это компонент верхнего уровня для текущего потока, а текущий поток находится в пути быстрого ввода-вывода.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Ntifs.h, Wdm.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

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

IoSetTopLevelIrp