Auf Englisch lesen

Freigeben über


IoGetCurrentIrpStackLocation-Funktion (wdm.h)

Die IoGetCurrentIrpStackLocation Routine gibt einen Zeiger auf die I/O-Position des Aufrufers im angegebenen IRP zurück.

Syntax

C++
__drv_aliasesMem PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(
  [in] PIRP Irp
);

Parameter

[in] Irp

Ein Zeiger auf das IRP-.

Rückgabewert

IoGetCurrentIrpStackLocation- gibt einen Zeiger auf eine IO_STACK_LOCATION Struktur zurück, die die E/A-Stapelposition für den Treiber enthält.

Bemerkungen

Jeder Treiber muss IoGetCurrentIrpStackLocation mit jedem IRP aufrufen, der gesendet wird, um alle Parameter für die aktuelle Anforderung abzurufen. Sofern kein Treiber eine Verteilerroutine für jeden IRP_MJ_XXX- Code bereitstellt, den der Treiber verarbeitet, muss der Treiber auch seine I/O-Stapelposition im IRP überprüfen, um zu bestimmen, welcher Vorgang angefordert wird.

Wenn ein Treiber dieselben Parameter übergibt, die er an den nächsten niedrigeren Treiber empfangen hat, sollte er IoCopyCurrentIrpStackLocationToNext- oder IoSkipCurrentIrpStackLocation- aufrufen, anstatt einen Zeiger auf die Position des nächsten unteren Stapels abzurufen und die Parameter manuell zu kopieren.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Ab Windows 2000 verfügbar.
Zielplattform- Desktop
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL- Beliebige Ebene

Siehe auch

IO_STACK_LOCATION

IRP-

IoCallDriver-

IoGetNextIrpStackLocation

IoSetNextIrpStackLocation-