Freigeben über


IoGetTopLevelIrp-Funktion (ntifs.h)

Die IoGetTopLevelIrp Routine gibt den Wert des TopLevelIrp- Felds des aktuellen Threads zurück.

Syntax

PIRP IoGetTopLevelIrp();

Rückgabewert

IoGetTopLevelIrp gibt den Wert des TopLevelIrp Felds des aktuellen Threads zurück.

Bemerkungen

IoGetTopLevelIrp- kann NULL-, einen beliebigen dateisystemspezifischen Wert (z. B. einen Zeiger auf das aktuelle IRP) oder eines der in der folgenden Tabelle aufgeführten Flags zurückgeben.

Wenn der aktuelle Thread keine Ressourcen über dem Dateisystem enthält, gibt IoGetTopLevelIrpNULL-zurück.

Wenn das Dateisystem die Komponente der obersten Ebene für den aktuellen Thread ist, gibt IoGetTopLevelIrp einen Zeiger auf den aktuellen IRP zurück.

Wenn eine andere Komponente als das Dateisystem die Komponente der obersten Ebene für den aktuellen Thread ist, gibt IoGetTopLevelIrp eines der folgenden Flags zurück:

Flagge Bedeutung
FSRTL_FSP_TOP_LEVEL_IRP Dies ist ein rekursiver Aufruf.
FSRTL_CACHE_TOP_LEVEL_IRP Der Cache-Manager ist die Komponente der obersten Ebene für den aktuellen Thread.
FSRTL_MOD_WRITE_TOP_LEVEL_IRP Der geänderte Seitenschreiber ist die Komponente der obersten Ebene für den aktuellen Thread.
FSRTL_FAST_IO_TOP_LEVEL_IRP Der Cache-Manager ist die Komponente der obersten Ebene für den aktuellen Thread, und der aktuelle Thread befindet sich in einem schnellen E/A-Pfad.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h, Wdm.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- <= DISPATCH_LEVEL

Siehe auch

IoSetTopLevelIrp