IoSetNextIrpStackLocation-Funktion (wdm.h)
Die IoSetNextIrpStackLocation-Routine legt den IRP-Stapelspeicherort in einem vom Treiber zugewiesenen IRP auf den des Aufrufers fest.
Syntax
void IoSetNextIrpStackLocation(
[in, out] PIRP Irp
);
Parameter
[in, out] Irp
Zeiger auf die IRP, deren Stapelspeicherort festgelegt werden soll.
Rückgabewert
Keine
Bemerkungen
Im Allgemeinen wird diese Routine von Fahrern nur selten verwendet. Es wird in erster Linie von Treibern verwendet, die einen eigenen Stapelspeicherort in einem IRP benötigen, den sie selbst zugeordnet haben, um sie an einen anderen Treiber zu senden.
IoSetNextIrpStackLocation wird im Allgemeinen nicht benötigt, weil:
- Der Treiber hat die IRP erhalten, die er von einem anderen Treiber auf höherer Ebene übergibt, und besitzt daher bereits einen Stapelspeicherort.
- Oder der Treiber hat dem IRP zugeordnet, benötigt aber keinen eigenen Stapelspeicherort, da er alles, was er benötigt, in einem Kontextblock beibehalten kann, dessen Adresse an seine IoCompletion-Routine übergeben werden kann.
Ein Treiber kann IoSetNextIrpStackLocation nicht mit einem IRP aufrufen, das er durch Aufrufen von IoBuildAsynchronousFsdRequest, IoBuildDeviceIoControlRequest oder IoBuildSynchronousFsdRequest ordnet.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar ab Windows 2000. |
Zielplattform | Desktop |
Header | wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h) |
IRQL | Beliebige Ebene |