IoSetNextIrpStackLocation-Funktion (wdm.h)
Die IoSetNextIrpStackLocation Routine legt die IRP-Stapelposition in einem vom Treiber zugewiesenen IRP auf die des Aufrufers fest.
Syntax
void IoSetNextIrpStackLocation(
[in, out] PIRP Irp
);
Parameter
[in, out] Irp
Zeiger auf das IRP, dessen Stapelposition festgelegt werden soll.
Rückgabewert
Nichts
Bemerkungen
Im Allgemeinen wird diese Routine selten von Treibern verwendet. Es wird in erster Linie von Treibern verwendet, die eine eigene Stapelposition in einem IRP erfordern, die sie selbst zugewiesen haben, um an einen anderen Treiber zu senden.
IoSetNextIrpStackLocation ist in der Regel nicht erforderlich, weil:
- Der Treiber hat das IRP erhalten, das er von einem anderen, übergeordneten Treiber übergibt und verfügt daher bereits über einen Stapelspeicherort.
- Oder der Treiber hat das IRP zugewiesen, benötigt aber keinen eigenen Stapelspeicherort, da er alles, was er in einem Kontextblock benötigt, behalten kann, dessen Adresse an seine IoCompletion- Routine übergeben werden kann.
Ein Treiber kann nicht IoSetNextIrpStackLocation- mit jedem IRP aufrufen, das durch Aufrufen IoBuildAsynchronousFsdRequest, IoBuildDeviceIoControlRequestoder IoBuildSynchronousFsdRequestaufgerufen wird.
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 |